We’ve been working on getting some of our units finalized so we can get them into the engine. Here’s a look at what we have so far. What do you think? Looking spiffy enough?
We’ve been working on getting some of our units finalized so we can get them into the engine. Here’s a look at what we have so far. What do you think? Looking spiffy enough?
Woooaaaaow that cracked planet, core of nekros screen is really awesome!!! Good job guys!!!
Thanks!
We’ve had so many updates recently, we can’t even wait to show off our next round of changes.
New concept art for the Command Ships. If they look a bit like guns, that’s because they are able to shoot out a blast with a large area of effect. Including a giant wave that knocks down enemies in a large radius. In addition to fighting power, you will also be able to use the ship to de-materialize debris to construct your buildings at your base.
Uh…
okay so there’s this problem called tangent mis-matching. what’s happening in your screenshot, is that you’re rendering a tangent space normalmap baked in xNormal (which uses one set of math) and previewing it in maya (which bakes/renders using another set of math). If you were to take your maya normalmap and preview your asset in 3dsmax you’d have this same issue.
It’s not that maya bakes normalmaps “better” at all, it’s that the maya renderer is sync’d to the maya baker.
UE4’s renderer is synced to a tangent basis called “Mikktspace” which is short for “Mikkelsen Tangent Space” named after it’s creator. Maya doesn’t use this, or even something close to it. So for best results IN ENGINE, bake in xNormal and make sure you’re using the Mikktspace plugin, and that in the plugin settings “Compute binormals in pixel shader” is checked. Baking your normals in Substance Designer/Painter or in Knald (which is developed by Mikkelsen) will produce the same results. I can highly recommend Knald for it’s speed as it bakes everything on the gpu not the cpu.
anyway. this isn’t just an artist opinion, i’m a rendering engineer.
Thanks Almighty_gir for taking the time to write up a good response.
We learned alot since that post and have fixed our process for going into UE4. We currently use Substance Painter to bake out all our models for a sync’d tangent basis. We chose substance since we use it for painting and it streamlined our pipeline.
Update on our command ship. We got some great feedback from the community and decided to combine 2 of our previous concepts into one! It’s got a lot of working parts to it, but is needed since the ship will be able to handle all sorts of different tasks.
Hey guys,
I’ve popped up out of the coding for a bit to give a quick update. We’ve launched our new website http://www.abatrongame.com which will be showing off all of our latest works. In addition, we have started up a weekly dev blog to check out. We are really excited in using UE4 and the great things we can create. We are doing weekly steam playtest to balance out FPS vs RTS modes which is really the fun part of the whole game making process =)
More updates to come in the coming weeks.
We’ve made a large number of improvements over the past week which we will playtest today. For those who don’t know, Friday is the day we all get together and do heavy playtesting. Luckily we have team members from a number of places around the world which give us valuable online data.
Root Motion in UE4…
I wanted to share some tips on how we approach root motion. First off, root motion sounds pretty neat but what exactly is it? Simply put, it is character movement driven by the animation instead of the movement component or player input.
When you first block out gameplay mechanics, the typical process is to just kill game characters and ragdoll them. However, at some point, you may want to add more dynamic action and depth to the player interaction. For example, you may want to add a knockback feature or even a knockdown and getup option.
There are several ways you can do a knockdown. We chose to use Root Motion. When a character gets hit by a large blunt force but does not get killed, we let a knockdown animation montage drive the movement. Here are some of our tips when implementing Root Motion.
Tip 1:
Provide at least 1 animation for each of the 4 major fall down directions. Mainly, the character can get hit from the Front, Back, Left, or Right sides. Each of these 4 possibilities needs to have its own corresponding animation.
I would start with 4 in the beginning stages, then if you feel you need more resolution, you can do additional directions: FrontLeft, BackLeft, BackRight, and FrontRight.
//C++ code snippet
//Get the direction of the attack
FVector vecTo = Impact.ImpactPoint - Victim->GetActorLocation();
vecTo.Normalize();
//Get my current facing direction
FVector vecForward = Victim->GetActorForwardVector();
const float c45 = 0.7071f;//approx 45 degree angle
//Get the angle difference
float dotForward = FVector::DotProduct(vecTo, vecForward);
//Calculate the direction
if (dotForward > c45)
{
AttackedDirection = EAttackedDirections::Frontwards;
}
else if (dotForward < -c45)
{
AttackedDirection = EAttackedDirections::Backwards;
}
else
{
FVector vecSide(-vecForward.Y, vecForward.X, 0.f);
if (FVector::DotProduct(vecTo, vecSide) > c45)
{
AttackedDirection = EAttackedDirections::Rightwards;
}
else
{
AttackedDirection = EAttackedDirections::Leftwards;
}
}
Tip 2:
Visualize the root motion inside of your animation package. We use Maya for all our animations but the same principle can be applied to any pipeline. When you use root motion, the collision capsule generally is what really moves around. With that in mind, create a 3d representation for your collision inside of Maya and attach it to the root bone. I simply use a cylinder as my shape.
The idea is that if your character animations go leftward, keep the collision shape centered inside the most important volume and in the direction your animation is going. Basically, if your character goes leftward, your collision shape should slightly lead ahead leftward of the animation. This will protect you from horrible model interpenetration artifacts.
More info…
Root motion has had major improvements over the last few engine releases and has just became feasible for network play. For more information, check out the UE4 Documentation
Thanks for reading and until next time… Enjoy your #Gamedev! =)
Also don’t forget to check out us out at http://www.abatrongame.com
Abatron AI ~ Building Surround!
Dear Community,
In this video I walk you through several stages of development I went through while making a building-surround feature for Abatron!
The AI gather around the entire surface area of the building instead of clumping all on one side.
What’s entertaining about this video is that I show you when things are not working correctly, and the steps I took to get the algorithm to its final state!
I even show you some of the C++ code!
Enjoy!
Rama
New update this week. We’ve implemented a new ability for our Manalock unit. Charge head first into the enemy and knock down whoever and whatever is in your way. Limited to FPS only, the Manalock Ram is a way to break up RTS strategies. This ability also does heavy damage to structures and walls.
We’ve been playing around with our new Rocketbelly unit recently and it’s been a blast! (pun intended) He’s a really big unit and it’s fun to stomp around in FPS mode. The Rocketbelly is able to spit toxins from his mouth and when he’s in siege mode, can launch rockets from his gut. Siege mode makes him imobile, but deadly.
[sketchfab]6080350a138d425e9d79537d4ccb78a3[/sketchfab]
Rocketbelly by abatron on Sketchfab
Its been a great year for UE4. Thanks Epic, we look forward to an even better 2016!
The past few weeks have been crazy with holiday, but we’ve managed to put in alot of updates to Abatron. We’ve spent a large amount of time revamping our ai system to be more interactive during battles. It required a huge refactor, but in the end the units are moving while attacking and can be given orders to approach enemies dynamically. In the past, once the enemy was engaged, the ai did its own attack plan, now plans can still be given during the attacking phase. The new method literally breaks the legs as separate entites from the upper body.
We also, hammered down a good balance between crowd simulation and avoidance groups to reap the best navigation benefits of them both. Frequent playtesting has given insight to our weakness and the resulting changes have really shifted the gameplay. The whole team is excited to show more as we button it all up here and create new videos.
Until then, check out Justin’s map updates if you need to stay warm this holiday =)
Happy New Years!
Only just stumbled across this, looks mighty sexy!
Working on a Multiplayer large-scale FPS / RTS Hybrid in my spare time too, so it’s nice to see some folks developing similar things.
Thats looks awesome! I like the Idea of combine this two Gernes !! Very cool!
Why Thank ya! That’s cool that you’re working on a hybrid as well. Where does it take place? Any details you can share
Thanks so much! We’re excited to start getting it into people’s hands so they can try for themselves.
Nice stuff… How far until the game ships? Would love to play!
teak
Thanks! We don’t have a release date set yet. However, we ARE accepting signups to be invited to our Alpha Testing. You can toss your name into the hat by subscribing to our newsletter here: http://www.abatrongame.com/newsletters
We’ve been up to quite a bit since our last update. Mainly we’ve been playtesting as a team and focusing on the RTS side of things. We’ve added some new particle effects, updated some of the Haagenti buildings, and added a few more units into the mix. We’ve also been working on our own in game recording program so we can take video while we play. We’re pretty excited about it.
Here’s some new shots of our latest update. Enjoy!
We made a new wallpaper recently for our newsletter subscribers!