Page 6 of 10

Re: Very hot

Posted: Wed Nov 05, 2014 12:21 pm
by eLPuSHeR
Yes. It's very well explained Petri. Thank you very much. You did a terrific work. I am pretty sure most people are running LoG2 just fine, even with not so state-of-the-art setups like mine. I haven't noticed any spectacular slowdowns. Laptops are a different thing though. I wouldn't use a laptop for gaming unless it's a beefy one. Most integrated video wouldn't help either.

By the way... I have spent 1600 € in getting a beefy i7 with DDR4 RAM support. I am updating from my olde AMD Phenom 1 with DDR2. I will replay LoG2 just to see the difference... :mrgreen: (and although LoG2 was running fine for me already).

Re: Very hot

Posted: Wed Nov 05, 2014 12:48 pm
by badhabit
petri wrote:Outdoor scenes in Grimrock 2 are almost always rendering bound.
hmmm. whatever that means, as the GPU e.g. in Dr. Disasters setup is not fully utilized. You mean the CPU part of the rendering pipe, which would explain the CPU boundedness? You mean the LOG engine part or the DX call part?
petri wrote: Using DirectX and OpenGL drawing commands have to be submitted in a single thread -- so regardless of the number of cores there's a limit how many draw calls can be submitted per frame.
OK, basically you say the CPU side rendering work (DX call preparations etc) is done single threaded. Fine. But this not explains why you recommend multi-core systems. I know this is a unpleasant point, but you should not mislead the people; you can achieve more frames with LOG2 with higher CPU clock but not with more cores currently. Either you update your recommendation (more clock and less cores) or change/optimize the rendering.

petri wrote: Grimrock 2 engine uses DirectX9 on the PC, so that the game runs on older hardware. Unfortunately DirectX9 has a pretty high shader constant setup and draw call cost. We can push about 4000 calls per frame before the frame rate drops below 60. I suppose rewriting the renderer for DirectX11+ would help (it has lower draw call cost from what I heard) but it would be a very large amount of work. So what's left is to try to minimize the number of draw calls.
Ok, minimizing draw calls sounds like a feasible performance optimization approach if that is the reasons for the CPU boundness (performance bottleneck) for low power systems.
petri wrote: Rendering less would help, but it's hard to do without losing visual quality, e.g. reducing view distances, shadows. The way levels are designed also has a pretty big impact on performance, for example forest scenes usually have horrible occluders (trees with lots of holes in the foliage) are problematic. We wanted to make the forests appear open rather than making the player feel surrounded by "opaque leafy walls", even when it could mean a small frame rate drop here and there. It's about finding the right balance between perf and visual quality.
Ok, sounds like as would it be possible to provide more user changeable GFX options: like render view distance etc (as I have the feeling the supression of unseeable and distant parts works not that well). And to stress the importance of this point, currently Log2 provides a PC game atypical low FPS dynamic by changing the GFX options from low to high. This is unexpected and a problem currently.
petri wrote: Hope this clears things up!
Partly, thanks.

Re: Very hot

Posted: Wed Nov 05, 2014 12:49 pm
by Dr.Disaster
petri wrote:Unfortunately DirectX9 has a pretty high shader constant setup and draw call cost. We can push about 4000 calls per frame before the frame rate drops below 60.
DX9: "growl"
AH: Bad doggie!
:D
petri wrote:I suppose rewriting the renderer for DirectX11+ would help (it has lower draw call cost from what I heard) but it would be a very large amount of work. So what's left is to try to minimize the number of draw calls.
hmm .. when the number of draw calls is the limiting factor .. would it make sense to send less but more complex calls?
(like combining related stuff and send this as one call instead of several)

In addition: does OpenGL has the same issues?
Any port has to use it anyway so adding it in to the Windows versions could also help.

Re: Very hot

Posted: Wed Nov 05, 2014 12:56 pm
by badhabit
Dr.Disaster wrote:
petri wrote:Unfortunately DirectX9 has a pretty high shader constant setup and draw call cost. We can push about 4000 calls per frame before the frame rate drops below 60.
DX9: "growl"
AH: Bad doggie!
:D
DX9 is still the smallest common denominator & most compatible graphic API, providing the capability running LoG2 on XP and linux & Mac machines (Wine). DX11 is clearly worse compatiblity wise, only OpenGL would have been better here . Other games have shown that typically DX11 is performance wise not worth the hassle vs the downside of worse compatiblity. (While the DX11 API itself seems to be better structured and prepared e.g. also for multithreading)

Re: Very hot

Posted: Wed Nov 05, 2014 3:03 pm
by ITwiener
Dr.Disaster wrote:I agree that there is still room for improvement but "badly optimized"? No, that's over the top.

I don't hesitate to call bad software bad. To give an example: when Diablo 3 was just released i tried to help the community over half a year to get this piece of garbage running as good as possible without the need to resort to USB3 sticks, SSD drives or a new system. Was quite some work but paid off for many players. The expansion RoS now might have improved that game a bit but IMO it remains a piece of overpriced badly optimized garbage.

When facing a problem with software i always look at the available info and if the problem starts with "laptop" and "crash after playing a while" it's most likely too much heat. I've seen brand new laptops getting really hot when stressed - easy enough to do with a good gfx demo or Furmark - but very rarely crash. Now when a brand new laptop crashes from heat is a bad design and you should return it and get a refund.

It does sound trivial but from my experience over many years dust is the top reason to heat crashes on laptops. In those mobile systems cooling is in permanent danger of degrading 'cuz dust is a silent killer. Of course i can say "use an fps limiter" but that'll very likely fix only a symptom and not the cause of an overheat problem plus: it robs the player of experiencing the game as it's ment to be.
ITwiener wrote:Without going ad hominem, I'd doubt that someone who's most demanding game in the library is Tomb Raider, will have proper experience about resources and perfomance of demanding games, and thus can make an objective statement about the state of the game, based on said comparisons.
Tomb Raider can be very demanding, way more then LoG2 ever could. It only depends where you are in the game.
SpoilerShow
5 cores in use, GPU pretty much maxed out and i did not even active every available gfx option.
Image
I definitely agree about D3 being extremely unoptimized, especially towards AMD users. I have to admit that calling LoG2 "badly optimized" may be a bit over the top. It's definitely not perfect, but calling it "bad" is stretching it a bit. It's just that as a PC gamer, well(towards both major GPU manufacturers) optimized games, are actually the minority these days, and the frustration accumulates over time, until finding another vent.

But with a small team like LoG has, even though it isn't really well optimized, the accomplishments are definitely noteworthy. Especially given the fact that notebook GPUs are an entirely different story.

I didn't mean to say that TR isn't demanding, just that the variety of examples would be lacking.

Re: Very hot

Posted: Wed Nov 05, 2014 3:36 pm
by badhabit
ITwiener wrote:
Dr.Disaster wrote:I agree that there is still room for improvement but "badly optimized"? No, that's over the top.

I don't hesitate to call bad software bad. To give an example: when Diablo 3 was just released i tried to help the community over half a year to get this piece of garbage running as good as possible without the need to resort to USB3 sticks, SSD drives or a new system. Was quite some work but paid off for many players. The expansion RoS now might have improved that game a bit but IMO it remains a piece of overpriced badly optimized garbage.

When facing a problem with software i always look at the available info and if the problem starts with "laptop" and "crash after playing a while" it's most likely too much heat. I've seen brand new laptops getting really hot when stressed - easy enough to do with a good gfx demo or Furmark - but very rarely crash. Now when a brand new laptop crashes from heat is a bad design and you should return it and get a refund.

It does sound trivial but from my experience over many years dust is the top reason to heat crashes on laptops. In those mobile systems cooling is in permanent danger of degrading 'cuz dust is a silent killer. Of course i can say "use an fps limiter" but that'll very likely fix only a symptom and not the cause of an overheat problem plus: it robs the player of experiencing the game as it's ment to be.
ITwiener wrote:Without going ad hominem, I'd doubt that someone who's most demanding game in the library is Tomb Raider, will have proper experience about resources and perfomance of demanding games, and thus can make an objective statement about the state of the game, based on said comparisons.
Tomb Raider can be very demanding, way more then LoG2 ever could. It only depends where you are in the game.
SpoilerShow
5 cores in use, GPU pretty much maxed out and i did not even active every available gfx option.
Image
I definitely agree about D3 being extremely unoptimized, especially towards AMD users. I have to admit that calling LoG2 "badly optimized" may be a bit over the top. It's definitely not perfect, but calling it "bad" is stretching it a bit. It's just that as a PC gamer, well(towards both major GPU manufacturers) optimized games, are actually the minority these days, and the frustration accumulates over time, until finding another vent.

But with a small team like LoG has, even though it isn't really well optimized, the accomplishments are definitely noteworthy. Especially given the fact that notebook GPUs are an entirely different story.

I didn't mean to say that TR isn't demanding, just that the variety of examples would be lacking.
Well, well, yes, we should maybe blame AH not overly harsh (small team, Petri optimized some time ago a little bit)... but on the other hand there are also reasons to let AH not that easily from the hook.

First, these issues (overheating, bad performance, bad scaling, not enough GFX options, limited Resolution support) are not surprisingly new but were reported 2 years ago for Log1 multiple time, really again and again. 2 years should be enough to add at least more GFX options. Second, currently AH has misleading official specs for a system which should lead to an optimal gameplay. Which is too optimistic (especially for AMD systems it looks like) and with the quad core recommendation plainly wrong. While CPU bound, more cores lead not at all to more FPS, only more CPU clocks do.

Re: Very hot

Posted: Wed Nov 05, 2014 4:38 pm
by petri
You can blame me as much as you like, but there is no silver bullet here to make the game run magically a lot faster. Sorry.

Re: Very hot

Posted: Wed Nov 05, 2014 4:44 pm
by badhabit
petri wrote:You can blame me as much as you like, but there is no silver bullet here to make the game run magically a lot faster. Sorry.
I guess the people would be fine with the statement that you will invest some time optimizing and try at least for instance to reduce the call amount and/or looking into adding more GFX options. And updating the recommended system specification given is also not an unreasonable demand.

No one expect magic silver bullets, but just stating "sorry guys, your are in bad luck" is not enough.

Re: Very hot

Posted: Wed Nov 05, 2014 4:47 pm
by NutJob
petri wrote:You can blame me as much as you like, but there is no silver bullet here to make the game run magically a lot faster. Sorry.
I've never had a Core go above 31c, or the GPU go above 42c, or go under 144 fps. Seems your application is highly optimized.

Re: Very hot

Posted: Wed Nov 05, 2014 4:56 pm
by petri
badhabit wrote:I guess the people would be fine with the statement that you will invest some time optimizing and try at least for instance to reduce the call amount and/or looking into adding more GFX options.
If the hardware was fixed (e.g. a console) I could do that. But with PCs there's always someone with an older PC that can't handle the game -> never ending optimizations. Besides I already spent quite some time optimizing the engine, so more gains would be hard to achieve.