Hello. Are You setting flipbooks for actors in behavioral trees or is it done in c++? I’m curious how to control flipbooks in 2d game in ai system without coding and is it posible. Couldn’t find any info about that in documentation or in forum threads.
Hi there!
We’re not directly setting anything for the flipbooks via the behaviour trees. Our coder, Rex, built the animation system completely separately to the AI. This system is shared by all characters (player and AI) and the Behavior tree just makes calls to this.
This system was initially prototyped in blueprints, with the core functionality being moved to c++ over time. However, there’s nothing really stopping you doing it all in BP if you wish, just moving to C++ suited our specific use case. However, I’d suggest that directly manipulating flipbooks in a behaviour tree probably isn’t the best way to go.
Cheers,
/Chris
Hey everyone, something else I forgot to mention, I’m now doing regular livestreaming of development over on Twitch.
Currently my schedule is Tuesday’s 1800 BST / 1300 EST + Thursdays 2000 BST / 1500 EST. The general idea is to stream either before or after Epic’s own streams. You can check that out here - Twitch
some eye candy pixel art here, good job
Very beautiful pixel art. Great job!
We’ve posted a pixel art animation dev blog at our new location on the Chucklefish forums. You can read it here.
It details our development of our talking sprites, from almost static with just mouth motion, to animated bodies with gestures. Give it a read and let us know your thoughts.
Just as a reminder to any of those using Blueprints for AI or wanting to look over some of our processes for making a 2D game in Unreal Engine 4, we have a number of dev blogs and dev videos available to view at our subforum on the Chucklefish site here.
We’re very much open to your suggestions, advice, and feedback too, so please let us know if you have any you would like to share. Thanks.
Awesome work on your project! You can see the care put into every aspect of it. I really like the implementation of the tutorials into the game so it doesn’t break the flow of the game. Too many games already have that “HEY STOP!!! THIS IS THE TUTORIAL!” system built into it that just gets annoying after a min or two. Keep up the good work.
Hey Chucklefish!
I just wanted to reach out with one question and ask if you could detail your biggest challenge(s) working with Paper2D, particularly anything that was an issue because it’s still “experimental.” I’m asking because my team and I are having a hard time committing to Paper2D with our project, seeing how a lot of features aren’t supported yet. We have some odd features we’d like to implement in 2D (i.e. isometric perspective, dynamic lighting) and we’ve had a big uphill battle finding solutions from the get-go. That said, it looks like Epic is keen on supporting Paper2D, so we’re hopeful that it’ll catch up with the rest of the engine!
Thanks for any comments/insights you have, and take care,
Jack
Pixel art here is totally eye candy, I love it so much
Hey Jack, I’d say the biggest challenges we’ve had working with Paper2D (at least from an art perspective) is AnimNotify, though we have sort of worked around it with some code support and the way we setup our flipbooks to generally have intros, loops and outros. We don’t have a marionette style character and therefore don’t have a skeleton based setup.
The other main challenge we have had, on and off, is the way lighting works in conjunction with an orthographic camera. Currently we have migrated to the forward renderer rather than the deferred renderer, as lights do not display in deferred when viewed through an ortho camera. We hope to look into this in the future and maybe get back to the deferred renderer, maybe.
Other than these challenges, I can honestly say working with Paper2D has been fairly easy for us, its great and not enough people give it the credit it deserves. It does so much that you would need to get multiple plugins and marketplace assets to do in other game engines.
Have you looked into the tilemap editor within Paper2D to build your isometric world? It supports various isometric tile shapes out the gate (I believe it has iso diamond, iso staggered and hex staggered) all you need to do is author your tiles appropriately and you should be able to build out an isometric game world fairly easily.
As for dynamic lighting, again, it should work ‘out the box’. Drop your lights into the world and they should light any surface they hit, as long as your material is setup to be lit (default epic ones are unlit). If you are looking for dynamic shadowing, such as in the awesome looking Pathway, you are probably going to need some code support to sort that out if you use an ortho camera. I believe you only get shadowing from the directional light at the min when using ortho cameras, if you go with a perspective camera you should get all dynamic shadowing but it might not be the right camera for your game. I’d say if you want an isometric view you don’t want a perspective camera, but anything can work.
Hope this has helped you, if you got any other questions or need more clarity, let me know and I’ll try my best but I’m just a lowly pixel pusher.
Hey Boxy, thanks for getting back to me! Definitely appreciate the input and help - I hadn’t heard of Pathway and am blow away at how good those shadows look! It’s honestly inspiring to see games like yours and Pathway with such a high level of polish. I’m also excited to hear that you’ve found Paper2D to work well for you and your team. My team and I love using Unreal and are more than happy to have the chance to stay in our comfort zone in terms of engine and tools.
Funnily enough, we were able to resolve a lot of our problems in the past 24 hours in regards to isometric perspective, layer rendering, and lighting. While getting the isometric TileMap set up wasn’t a challenge, we were having problems with layer rendering and lighting in and isometric TileMap. As you mentioned, migrating from deferred to forward rendering was a key first step. We also played back and forth with ortho and perspective cameras and found the former to be the solution we needed if we were to go down the isometric route. That all said, with some code support we now have our rendering and lighting working properly with the different layers in our TileMaps, and are excited to see how well this system works as we expand. We haven’t gotten our feet wet with 2D animations in Unreal yet, but I’m hoping Flipbook is as intuitive as other 2D animation systems we’ve used, such as Unity’s.
Anyways, thanks again for the wise words and quick response!
Just wanted to echo many others in this thread and say this game has really caught my attention. The detail and animation fluidity of your pixel art is super impressive, and I’m excited about the mechanical possibilities for a game with a Metroidvania-like world, Prince-of-Persia-style acrobatics, and stealth gameplay inspired by Thief. Those are some great design touchstones to be aiming for and it looks like you’re well on your way to delivering something polished and different.
I’m also very appreciative of the deep and informative posts you’ve done on your process. I love getting a window into a game’s trials and triumphs during development, and it’s a generous service to anyone in the community pursuing similar projects as well. Looking forward to seeing more!
I posted earlier in the year that we had considered and tested normal mapping our art but weren’t moving forward with it, it made the pixel art noisy and less pixelart-esque and was potentially a huge time sink.
However, we have since seen excellent examples of normalled pixel art and it made me decide to have another go at it, this time concentrating more on attempting to sculpt the larger shapes of the art, rather than trying to get every minute detail out of the sprite (which is what one would normally use normal mapping for in a conventional 3D environment). This led to a much cleaner, bolder look than I first anticipated, and got rid of the noisy look that the team disliked so much.
http://i.imgur./QYsyrfq.gif
These are just a handful of the flat tiles I have handpainted normals for so far and although it is a potato quality GIF they give an idea of the look we are hoping to achieve for the game. The final effect might be played down from this example, as normals do have a tendency to ‘override’ the pixel art and that’s still something I want to try and avoid. This should just be a subtle effect on top of the base environment art, not overrule it.
Any feedback or criticism is welcome.
Awesome project with stunning visuals I definitely will follow your progress
Just one thing that I disliked in the video: The screens is very “tightly” connected to the player’s position, so that the player is always in the center. That, however, leads to quite rough screen movement, at least in my opinion. Maybe you could make this a bit smoother?
We’re hoping to do a stream at some point covering getting started in Paper2D, and how we’re using it in The Siege and the Sandfox. If we did, what questions do you have, or what areas of it, would you most like to see us cover?
Also, our designer Chris Wilson has released his Develop: Brighton talk on creating effective tutorials in video games, and the lessons learnt from The Siege and the Sandfox:
=bN4qkGHzYLg
Thanks for the compliments on our game. And yes, this is definitely something we’re addressing. Getting the camera behaviour to better complement player movement is high on our list.
Cool, glad to hear that!
Did you guys use C++ to create this game or did you use the regular UE4? This game inspires me to create a 2D RPG type game.
We’re making a build for our first round of play testing sessions. As we work on this process, designer Chris and producer/designer Aidan will be live streaming development on our Twitch channel once a week.
Come and see general progress on the game, and our design methods, and how we’re working on 2D in Unreal.
We’d love you to join us and interact live, but if you have any questions specifically - either based on previous streams, or in advance of the next stream - then we’d love to hear them here, or you can PM me.
Stream day: Thursday
Stream time: 20:00 (GMT) | 15:00 (EDT) | 12:00 (PDT) | 22:00 (Moscow) | 04:00 (Tokyo, Friday)
Stream channel: Twitch | YouTube (uploaded after stream)
Last stream:
Week 1:
=LOAttjioJ40
Week 2:
https://www.youtube./watch?v=s6Kr-x2ebnk
We use a combination of Blueprints and C++. It depends on what we’re trying to solve or implement, but in many cases Blueprints is the perfect tool for the job.
Hi everyone,
Just thought I’d let you know we’ve done a few more of these playtest build streams:
https://www.youtube./watch?v=TqbmG-w7jAE
=yFKvvNsO_X8
Be sure to check out week four for a first look at our first pass visibility occluder: