Permanant fix for stuttering jerky graphics.

@powbam: totally agreed, since the GD’s rendering engine is based on DX9, which is known for not optimizing multi-threading cpu, mostly 1 or 2 cores, and it seems that is the problem. Because GPUs can only draw frames when receiving orders from the CPU but in the heat actions the only single core cannot handle such many tasks, the result is frame dropping and low GPU usage.

I don’t think there will be a solution unless they change the rendering engine to DX11 to support multi-threading, hopefully that day will come.

Maybe they do but they can’t. Problem is the engine that they don’t/can’t touch. In addition to that, Directx 9 and windows au and nvidia 37x.x drivers have some serious issues when they are together. There is no single performance improvement let me tell you all why;

my rig has windows 10 that starts with 900~ mb ram (compare with yours ;)) due to me closed everything that can interrupt or quque threads such as cortana,telemetry,windows store, windows’s screen recording or any other stuff that works in background. I can see login screen in 5.5 seconds when i click power button. So, when my fps drops 60 to 40, my gpu usage is never over %40. This is probably not Grim Dawn’s fault since engine and the reason above.

Any idea how big of a job it is to shift from 9 to 11? Kinda curious now.

I pretty much agree there. If there was it woulda happened a lot sooner I suppose =/

Sent from my SCH-I605 using Tapatalk

We are upgrading the engine to DX11 as we speak… however, I don’t know how much impact that will have for people. It may improve performance a bit but I don’t expect it to work miracles, especially since most performance issues are CPU related.

We’re looking at additional things we can move out of the main thread but that’s a more difficult challenge. We already moved physics out of the main thread, which helped a lot but some of the bigger CPU intensive tasks are less easily separated.

A big part of the problem with GD is not that it’s graphically intense but that there is a lot of loading / unloading, enemy pathing and physics that place a heavy burden on the CPU. Frame rate can also fluctuate a lot, since by far, the biggest impact on frame rate occurs when the player gets near dense groups of enemies. This fluctuation causes it’s own problems, notably with v-sync.

As people have noticed above, v-sync can cause problems when framerate is near the v-sync thresholds. This isn’t due to our implementation, since v-sync is implemented at the graphics driver level but just a problem that might more often due to FPS fluctuating a lot. Everytime your framerate goes 1 FPS above or below the v-sync threshold, it switches to the next level and can cause a little hitch.

When I upgraded my system / monitor, I actually ended up with worse performance because of this and found that it improved significantly by turning v-sync off because my frame rate was often bouncing up and down around 120fps. With v-sync, every time it drops to 119fps or below, then back up, it will stutter. Likewise if your frame rate is frequently dropping below 60fps, then v-sync causes it to keep cutting back and forth from 60fps to 30fps.

http://www.geforce.com/hardware/technology/adaptive-vsync/technology

So, good news - we’re still working on things that could improve performance… but I don’t know that any of it will be a silver bullet fix for any particular case. If you’re suffering from this v-sync issue, then the fix is going to be turning off v-sync or changing / adjusting your monitor and video card.

1 Like

Cool, wasn’t expecting that. What made you to do that, is the next project using the same engine and you are working on making further improvements?

I noticed framerate improvement by setting lightning on low, from 10 to 15 fps gained on huge action.

I think the next project is using Unreal engine.

Upgrading to DX11 sounds cool though. Good luck with the transition :slight_smile:

If that’s true thats even better!

You can mostly thank the XboxOne port. :wink:

It requires DX11 and we’ll also need to do a bunch of work to get decent frame rates on there. We won’t be changing anything else about the PC version that will affect gameplay but it will get these engine improvements and some additional controller functionality.

We also are planning another “spin-off” game that is based on GD but a somewhat different kind of game.

The totally new non-GD project we’re working on uses Unity.

Grim Dawn mobile game confirmed?

XboxOne port?! You open up new markets! :smiley:

welp, i know what im getting my nephew for his birthday.:stuck_out_tongue:

Oh wow… 2 big medierra bombs. Wasn’t expecting that.

DX11 and an Xbone port. I suppose I should have suspected something deeper was going on.

You guys really do have your work cut out for ya then. I assume you’re going for a target 60 fps on console? Do you feel you can achieve a stable port? Do you foresee having to make concessions to do so, ie. Decrease the mob count?

Sent from my SCH-I605 using Tapatalk

hmm thinking on it, will the move to DX11 hurt those who cant run DX11, or will the game still support DX9-10?

Not sure yet but I wouldn’t be surprised if the console version needs some special adjustments, like reduced mob count is an obvious one.

It’s kind of funny we’ve reached a time now where, at least for some games, PC is the preeminent version and then the console version gets stripped down a bit.

Nice to hear you say that. Those of us hooked on PC gaming get scared when we hear about the death of our platform. I have nothing against consoles but I love gaming on the machine I do everything else on as well. Being able to access the web so easily when I have a game question is invaluable to me.

Thank you… I know i cried and whined a lot in forums when it comes to performance but it has to be done. When i come closer to dense mobs, it exactly happens what you say. I closed game v-sync’s and using adaptive from nvidia control panel which is somewhat better. I also check my cpu usage when fps drops 60 to 40, it is also not close to full. This is sad that engine does not fully utilize my resources. My gpu usage %40, cpu %60 and fps drops… I know windows au and nvidia have some serious driver issues but “that less using” do not happen in many other games(not all of course.) PS4 port would be better but it is your game and your choice. If you use directx then you dont have any other choice of course.

I dunno if you upgrade your engine to directx11, multithreading will be a thing? damn my i7 would love that. At least you can utilize cores maybe…

Oh wow, thanks for your hard work. I hope we will get better results than now. Meanwhile, I’ll try turning V-Sync off, I guess.

You could also enable triple buffered VSync or get a setup with Async, which is the best invention since 3D graphics :slight_smile:

Congratz on opening up to a new market, Crate! DX11 support sounds sexy too, even though it might be just a novelty.