Download

[WIP] Republic Sniper

Hey guys, I’m Patrick from MartianCraft, one of the artists working on Republic Sniper.

For the past few weeks we’ve been posting Screenshot Saturday updates in the WIP forum for our game. We wanted to keep you updated on future progress through one easy-to-follow thread. Let’s start with our previous Screenshot Saturday posts!

January 10th’s Screenshot Saturday post

January 17th’s Screenshot Saturday post

January 24th’s post

January 31st’s Screenshot Saturday post

Some early mood paintings for level concepts, and the playable UE4 blockouts that resulted

http://i.imgur.com/ANf4T52l.jpg

http://i.imgur.com/F8k0xJLl.jpg

An early version of the initial training level for Republic Sniper, pushed through with textures and lighting. Runs smooth as butter on mobile devices.

http://i.imgur.com/xuhqvmCl.jpg

http://i.imgur.com/ZiHmBI1l.jpg

…And a blockout of the same level with new ideas for the layout to the main training area

http://i.imgur.com/TWuKyfRl.jpg

Some more visual development work, now. We’re creating many of the hero assets in Zbrush, which now has great Keyshot support, allowing us to quickly look dev everything from architecture to characters

http://i.imgur.com/euI5fH5l.jpg

http://i.imgur.com/yy8yUZol.jpg

http://i.imgur.com/4Dg2TFMl.jpg

Some earlier visdev work on smaller props

http://i.imgur.com/LZv9YT2l.jpg

http://i.imgur.com/ETB0dV4l.jpg

The same turret textured and in-game

http://i.imgur.com/nbl5D4fl.jpg

http://i.imgur.com/3WP6px3l.jpg

http://i.imgur.com/XRrmYNrl.jpg

Lovely work. I really enjoyed watching the blockouts turn into the final versions. Keep them coming :smiley:

So question for you guys at martiancraft -

Are you guys using some form of custom shaders with Unreal 4?

How are you able to get the performance that you are getting on iOS?

Could you go into some form of Technical detail?

Also mind giving some advice when targeting mobile?

Either way you game looks stunning so far. :smiley:

No custom shaders to date, at least in terms of writing our own HLSL shaders. We have a hand full of “Master” UE4 materials and then we use material instances on the actual models. While we haven’t gotten into heavy texturing yet, I don’t honestly foresee the need to write shaders. UE4’s material system is pretty amazing and has let us move quite a bit of workload from programmers to artists. That could change - it’s possible that we might want to do something that the Material system can’t handle, but if I were a betting man, I’d bet on us being able to get this game shipped without writing a line of shader code.

We avoid demoing on older devices. :smiley:

I’m kidding, kind of. We haven’t gotten to the point of optimizing yet, but so far, on the 5S, the iPad Air, and all later devices, we always 30-35 fps even on our biggest, most complex levels. Epic and Apple get the credit for that, not us. Trying to run current builds on the iPad or original iPad Mini can be a little painful, though. That’s a problem for later in the dev

Sure, I’ll try to include more technical details in my Saturday updates, which I’ll be putting in this thread going forward.

Since moving to UE4, honestly, the biggest challenge on mobile is coming up with good controls. We’ve spent a lot of time working on our move mechanic, and we’re not done. You have to find a balance. You simply can’t offer the amount of movement freedom you can with a console controller, so you have to choose which aspects of control are important to your game and which parts you can take away from the player somehow without hurting gameplay or immersiveness.

Historically, mobile has been very constrained in terms of computing resources. Devices never had enough memory, processor speed, or GPU cores to do what you wanted to do, so you had to compensate with all forms of cheat - special pared back shader. Our original Unity version had five or six completely custom shaders, all written trying to get the look our artists wanted at a decent framerate on device. We haven’t really had those issues since moving to UE4, though, honestly. The shader compilers and render pathway automatically handle most of that for us. That, combined with significant jumps forward in mobile computing power, have made these traditional mobile issues less of a factor for us.

It is important to decide up front which devices you’re willing to sacrifice to get the experience you’d like, too. While we’d love to ship Republic Sniper so it supports all iOS devices that Apple currently supports, we’d be okay cutting support for older hardware if we can’t get the performance we want on those devices without sacrificing too much in the way of image quality of framerate. Android, which will likely be the second platform we ship on, is much more challenging in that respect. You can specify certain requirements, but there are so many devices by different manufacturers, running different variants of the OS, most of which are usually at least a year old, and many of which have been customized by carriers, running on different hardware architectures, that you’re likely to have some devices that just don’t run your game well if you make it graphically rich.

Thank you, that’s really nice to hear. Our art team is phenomenal and UE4 has been a great tool for us.

It was great seeing you guys on the stream yesterday. The Republic Sniper is looking great. Best of luck!

Because of Patrick’s mid-week post for the Twitch.tv stream, we don’t have a lot of new images for this #ScreenShotSaturday post, but the large bulkhead pillars have been retopo’d, normal and textured mapped and moved into the hangar bay game level. The upper part of the hangar bay is starting to feel much more complete and real. There are still lots of areas that need to be detailed and textured, but there’s a depth and solidity staring to happen. It’s beginning to feel like a real place, which feels really good.

http://8.t.imgbox.com/VmqYC7pf.jpg

For those who saw the Twitch.tv stream two days ago, we don’t have a lot of new information to share this morning. We went into crunch time leading up to our visit to Epic, so I think we’re decompressing a little right now. I know, at least, I am.

Speaking of the trip to Epic, it was fantastic. What a genuinely nice (and, of course, smart) group of people. Everybody we met, worked with, or talked to was just super cool. I was a fan of Unreal and Epic before the trip, but the visit may have tipped me over into full FanBoy mode. Just the fact that a gaming giant like Epic would roll out the red carpet for a team our size blows my mind. They made us feel like a partner more than a customer, and we had a great time. So, thank you, Epic (and Chance and Dana) for having us.

I fear there’s no rest for the weary with GDC coming up in just a few weeks. We have a bunch more things we want to get done before the show. We won’t have any official presence on the show floor at GDC, but I’ll be out at GDC and will be happy to show people the game on device and answer questions or just shoot the bull with anyone who wants to talk. I’m also always interested in seeing what others people (especially small and indie shops) are working on, so if you’ve got a WIP you want to share, I’d love to see it too.

I promised more technical details, but I’m a little exhausted and hungover this morning, so I’m going to beg forgiveness for not starting more detailed technical stuff with this update. :slight_smile: As always, though, if you have specific questions, technical or otherwise, we’re more than happy to field them here.

Lastly, I want to thank the team, especially Alex, Patrick, and Thomas, for really digging in their heels and getting so much stuff finished last week.

Thanks for reading!
Jeff

I’ve been pushing the team to post pictures throughout the week. It’s hard to pry these darn unfinished shots out of our art team, sometimes, though. This is a modular catwalk system that Alex is working on right now. these are high-poly ZBrush models rendered in Keyshot. They’ll be moving to retopo in the next day or two and should be in-engine by next #ScreenshotSaturday.

http://2.t.imgbox.com/wyw2vbJI.jpg http://5.t.imgbox.com/7DNGD8X8.jpg

Your guys art is epic!

Wish I had your skills :slight_smile:

Thanks! Honestly, I wish I had these skills, too. Alex is a ZBrush beast. :slight_smile: I mostly just put dents in red spheres when I try to use ZBrush. :rolleyes:

Hey gang! This is Thomas (top-knot, beard) saying hello. If anyone has any specific questions about the tech or our approach to various problems I’m more than happy to address those here.

Thanks for checking us out!

That reminds me. I really should introduce the team. Rob and I, and sometimes Thomas, usually get to be the public face of Republic Sniper, but it’s very much a team project. So, without further ado, here is the Republic Sniper team:

  • Thomas](https://forums.unrealengine.com/member.php?12316-Thomas-Ingham): Lead programmer and almost entirely responsible for our cool move mechanic and, frankly, most interaction in the game. Thomas also pitches in on just about anything that needs to be done, whether it’s left or right brained. He’s the one that imposed some order on our formerly chaotic development process. (Twitter)
  • Alex](https://forums.unrealengine.com/member.php?28466-Martiancraft-AlexS): Concept Artist, character artist, environment artist, high-poly wizard, Unicorn™ (Twitter)
  • Patrick](https://forums.unrealengine.com/member.php?28457-MartianCraft-Patrick): All around 2D and 3D artist, plus video & FX (he did almost all of the visuals of our trailer himself, in two weeks). (Twitter](https://twitter.com/polygonsandwich))
  • Jen](https://forums.unrealengine.com/member.php?28753-jenbutson): Marketing, outreach, evangelism, plus pestering the artists for stuff to show the world. (Twitter)
  • Rob: One of the other owners of MartianCraft, Rob worked with me brainstorming the original Turncoat idea and played a large part in helping me develop the Universe our game takes place in. He’s also doing the music and audio for Republic Sniper, and he wrote, produced, and did audio for the trailer. (Twitter)
  • Kevin: Our project manager. He helps keep us doing what we need to be doing. (Twitter).
  • Me (Jeff): I’m primarily responsible for story, script, & universe, plus I do the AI programming and pitch in on other programming tasks (mostly C++, but some blueprint). I also do some modeling, rigging and animating, but mostly proxy stuff that won’t make it into the final game because [FONT=Courier New]#notaunicorn. I do the ScreenShot Saturday updates (Jen does the rest of the social media stuff, though) and I also get to be the public face of the game and take credit for the hard work everybody else does.

We all wear many hats on a team this size, so nothing up there fully captures what anybody does, but I think it gives a general idea about the current division of labor. Other people at the company have contributed to Republic Sniper and likely will in the future, but this is what I generally consider to be the core team. We’ll also likely be using some freelance talent as we get further along. The voice work on the Trailer was done Deanna Moffitt, and we intend to use voice actors for the rest of the game. We may also be looking to use other freelance artists as time goes on.

If you’re an artist (character, environment, animator) and would like to be considered for freelance work, please don’t hesitate to send your resume, portfolio, or cv to jeff at martiancraft.com or using the contact info in my forum profile. As always, we welcome questions and comments about anything we’re doing.

Hey everyone! Our guys were hard at work cleaning things up yesterday so we didn’t have a lot of new pretty things to show until today. We’ve been baking normal maps to make low poly assets look high poly.

B9qaQr3CIAAhLRD.png

Tweet: https://twitter.com/RepublicSniper/status/565934315364560896/photo/1

thats a nice bake, would like to know how the artist got around to do it, settings and such. Thanks and great work!!!

Thank you. Let me go unchain one of the guys from their desks and see if they’ll come explain the process we’re using.