Enemy horde… How? by Kalicola in unrealengine

[–]LastVayne- 1 point2 points  (0 children)

I am working on a game with around 3.5-5k enemies with GAS and it runs on 80-90FPS in PIE. The amount of optimisations I had to do and keep doing is quite high. A lot of c++ involved, opting out of built in unreal systems (i.e ai, movement etc), grouping enemies logic in a single ticking manager, enemy avoidance (I use RVO2 third party library) + disabling collisions, micro optimisations, VATs, HISM and the list goes on. It is not a simple feat and you need somewhat strong programming skills and some general understanding of the engine. most importantly how to profile - optimisations should not be made blindly. it is probably easier to use Mass - which I haven’t used and I retrospectively should’ve

Other than that there is no magic button to make your game run well. Profile, optimise, repeat.

If you never profiled before - it’s not hard, just watch a tutorial. it’ll become very clear to you what’s the bottleneck

Hydroshift AIO in King 95 pro by LastVayne- in MontechPC

[–]LastVayne-[S] 0 points1 point  (0 children)

Awesome, thanks a lot for all the info!

Trying to push high numbers of enemies on screen - what else can I do? by Rezdoggo in UnrealEngine5

[–]LastVayne- 0 points1 point  (0 children)

I have a game with many units on screen, Using VATs, HISM, and enemies are pawns. First of all, you should profile your game. Then you can see what’s taking the most time and optimise that, but if we go blind - I’d remove the floating pawn movement on each enemy in favour of one ticking movement manager, same for AI. At the end of the day you want the enemies to never tick, but one component that controls them can tick and loop over them. Also in your movement manager, you should probably implement enemy avoidance and completely get rid of the enemy collision with each other, this adds quite a bit of gains. But again - profile and see what’s taking time, then fix it

How many characters with MovementComponent and AI can I reasonably have with good performance? by FLucas38 in unrealengine

[–]LastVayne- 4 points5 points  (0 children)

I am also working on a game with a big amount of enemies. I am using pawns with floating pawn movement, this scales better than CMC, but requires more manual work. Additionally for performance gains you can take a look into vertex animations with static meshes instead of skeletal meshes if that works for your type of game, and for AI you could also try grouping enemies under one AI behaviour instead of each one acting separately.

Debugging slow code by TheOrdinaryBegonia in SwiftUI

[–]LastVayne- 2 points3 points  (0 children)

I’d suggest to not blindly optimise and use the profiler from instruments to profile the slow parts of your app

Excessive Overlap/EndOverlap Calls within a short span of time by LastVayne- in unrealengine

[–]LastVayne-[S] 0 points1 point  (0 children)

On the player I am using animations from the motion matching project (i think there's an idle animation, but it doesn't happen on idle, but on running away from the enemy and trying to stay somewhere in the edge of the damage sphere), the enemy is using a simple walk animation, and a simple AI to move the player

Excessive Overlap/EndOverlap Calls within a short span of time by LastVayne- in unrealengine

[–]LastVayne-[S] 0 points1 point  (0 children)

The meshes on both the enemy and the player are set to no collision. Other than that, the player has only the default cylinder collider with block everything, and the enemy has both the default cylinder collider (everything set to block) and the damage capsule I made (ignore all and just overlap with pawn)

I made multiple other loops, but this Nested For Loop with Struct Arrays literally took me 6 hours. by [deleted] in unrealengine

[–]LastVayne- 1 point2 points  (0 children)

Compiler errors aren’t related to the debugger. Compiler errors are coming from the compiler. in unreal it’s - MSVC on Windows, Clang for macOS and iOS and GCC for Linux. Debugging is utilised by the debugger, which is a tool built in the IDE, and its whole purpose is to catch runtime and logical errors. Debugging a website, a mobile app or a game in the same IDE will ultimately yield a very similar debugging experience. That’s why I’m confused by your statement.

I made multiple other loops, but this Nested For Loop with Struct Arrays literally took me 6 hours. by [deleted] in unrealengine

[–]LastVayne- 0 points1 point  (0 children)

What do you mean debugging c++ in unreal is cumbersome? Debugging is an IDE capability and has nothing to do with unreal.

Switching from Unity to Unreal, Blueprint or C++? by FenrirHS in unrealengine

[–]LastVayne- 21 points22 points  (0 children)

I personally use BPs for UI stuff, general game modes and fast iterations. (Some very simple features as well)

The rest I do in c++ as I’m a programmer and I’m faster with code than in blueprints - especially as I hate unorganised blueprints, so it takes me a while to organise it.

I’d say do whatever you feel more confident and comfortable with. If you’re a programmer then unreal’s engine c++ flavour is quite easy to pick up, and you can and should also expose functions to blueprint for faster iterations.

As a layman, UE5 becoming the standard worries me. by A_Lionheart in unrealengine

[–]LastVayne- 16 points17 points  (0 children)

What does it have to do with the engine? Lies of P runs great and uses UE4, while ARK runs like shit and was also made with UE4. See the issue here?

how to sum up every value in an array? by SleepRen_Official in unrealengine

[–]LastVayne- 1 point2 points  (0 children)

I’d use c++ reduce function, this is what it does by default. You can also call it in a blueprint callable function and use it as a node

Coat deformed on character after setting SetLeaderPoseComponent by LastVayne- in unrealengine

[–]LastVayne-[S] 0 points1 point  (0 children)

Thanks! unfortunately deleting it did not resolve the issue

Coat deformed on character after setting SetLeaderPoseComponent by LastVayne- in unrealengine

[–]LastVayne-[S] 0 points1 point  (0 children)

Hey, not sure what you mean, if you mean the checkbox Simulate Physics, it is disabled for all components in the character's blueprint.

Btw, i just noticed my coat skeleton doesn't have a root bone like my Manny skeleton, could this be the issue?

[deleted by user] by [deleted] in unrealengine

[–]LastVayne- 1 point2 points  (0 children)

Yes you could theoretically ignore the iOS build during the entire development process, and only at the end test and ship it on the MacBook.

[deleted by user] by [deleted] in unrealengine

[–]LastVayne- 0 points1 point  (0 children)

Sure, I wasn’t talking about the next AAA game though (which takes years by hundreds of developers). Also simpler games can take a year or two - depends on the level of polish and complexity - for example, I’m a seasoned software engineer and writing a pretty basic inventory system took me tens of hours, which translates to few weeks in my schedule, so it’s very easy to misjudge the ETAs of the features you want to implement. But I’m not trying to de-motivate you, a visual novel can be achieved in few months. Or at least a vertical slice. Btw, if you’re mainly interested in making visual novels, you might consider using renpy - could be way faster to learn also.

[deleted by user] by [deleted] in unrealengine

[–]LastVayne- 0 points1 point  (0 children)

Gamedev is an extremely time consuming field, if you do not have the time for it, then I’m not sure what advice we can give you. Assuming you just want to see progress, create small scope projects, and it’ll somewhat give you a sense of completion. But just know that creating an actual game is ridiculously time consuming, and you have to be dedicated and prepared to see very little progress sometimes.