Client rewrite β-testing

Announcements about major changes in Haven & Hearth.

Re: Client rewrite β-testing

Postby shubla » Mon Jan 27, 2020 11:17 pm

loftar wrote:
jordancoles wrote:I noticed a drop in fps when boating with large groups of people, ie. 4 full rowboats all traveling down the same river together

Was that something you noticed on the stable or on the new client?

jordancoles wrote:Also, all animals. Spawn in 100 cows and pigs instead of people and have them derp around on screen

200 cows, 100 pigs:
ss.png

Also, as another note, a tip on performance is to use the G1 garbage collector, but I'm not sure in exactly what version of Java it was made the default. It could be Java 9, but it's definitely the default in Java 11. It does however not exist at all in Java 8, which I believe is what most people still use. The reason why I haven't recommended it previously is because it makes allocations ~30% slower in my testing, meaning it's not a great match for the current (stable) client, but the new client doesn't have any problems with that, since its allocation-heavy threads generally aren't the bottleneck. The advantage of the G1 GC is that it heavily reduces the need to "stop the world" for garbage collection, which is a significant source of major stutters.

I'd call the rewrite a success if (already the first part) allows 200 cows and 100 pigs with 60 fps.
Image
I'm not sure that I have a strong argument against sketch colors - Jorb, November 2019
http://i.imgur.com/CRrirds.png?1
Join the moderated unofficial discord for the game! https://discord.gg/2TAbGj2
Purus Pasta, The Best Client
User avatar
shubla
 
Posts: 13043
Joined: Sun Nov 03, 2013 11:26 am
Location: Finland

Re: Client rewrite β-testing

Postby MagicManICT » Mon Jan 27, 2020 11:37 pm

loftar wrote:Also, as another note, a tip on performance is to use the G1 garbage collector, but I'm not sure in exactly what version of Java it was made the default. It could be Java 9, but it's definitely the default in Java 11. It does however not exist at all in Java 8, which I believe is what most people still use.

Good to know what you're using to test with so that the rest of us can use the same or similar platform ie OpenJDK 9+. ;)

As far as why most of us are using v1.08, newer versions cause crashes for many people, and we still direct people to Oracle (java.com) to get Java. I've not tested OpenJDK for Windows myself, and am not going to recommend it to others when I haven't tested it, and don't plan on testing it when our Linux users have issues with it.

I'll probably switch when Oracle starts requiring paid subscriptions or purchases to access their "standard" version of Java. I don't have issues with animations and such, but I don't care as long as gameplay is stable, not jittery (dropping to low single digit frame rates) and rubber banding (poor network, other issues).
Opinions expressed in this statement are the authors alone and in no way reflect on the game development values of the actual developers.
User avatar
MagicManICT
 
Posts: 18437
Joined: Tue Aug 17, 2010 1:47 am

Re: Client rewrite β-testing

Postby loftar » Mon Jan 27, 2020 11:49 pm

MagicManICT wrote:Good to know what you're using to test with so that the rest of us can use the same or similar platform ie OpenJDK 9+. ;)

I am in fact mostly testing on Java 8, I just also test on Java 11, and that's just how I know that the G1 collector is nicer (at least with the new client).

MagicManICT wrote:As far as why most of us are using v1.08, newer versions cause crashes for many people, and we still direct people to Oracle (java.com) to get Java. I've not tested OpenJDK for Windows myself, and am not going to recommend it to others when I haven't tested it, and don't plan on testing it when our Linux users have issues with it.

Yeah, I'm well aware, and it's not like I mind people using Java 8 or anything. In itself, that's perfectly fine, though I am aware that there are issues with Java 11. They're mostly related to JOGL, however, rather than to the client itself. It might be that the JOGL project recently fixed those issues, however, so I should probably try upgrading to the latest version thereof. I do have that problem myself on my laptop, so I do in fact have a test case.
"Object-oriented design is the roman numerals of computing." -- Rob Pike
User avatar
loftar
 
Posts: 8926
Joined: Fri Apr 03, 2009 7:05 am

Re: Client rewrite β-testing

Postby ctopolon4 » Tue Jan 28, 2020 1:27 pm

its kinda dark at night, dont know how to reproduce (mb just walk at night)
Image


i was lucky to place 1 stockpile, after i try to build something this ability gone (no preview to place building or stockpile) \\ fixed after restart client, broke after few min later
User avatar
ctopolon4
 
Posts: 738
Joined: Sun Jun 03, 2018 2:28 pm
Location: mom's basement

Re: Client rewrite β-testing

Postby loftar » Tue Jan 28, 2020 2:25 pm

ctopolon4 wrote:[screenshot]

That screenshot would have been a ton more helpful if you had captured the debug-text in the lower right.

ctopolon4 wrote:i was lucky to place 1 stockpile, after i try to build something this ability gone (no preview to place building or stockpile) \\ fixed after restart client, broke after few min later

Is this something you can reproduce reliably? I can't seem to get it to happen at all.
"Object-oriented design is the roman numerals of computing." -- Rob Pike
User avatar
loftar
 
Posts: 8926
Joined: Fri Apr 03, 2009 7:05 am

Re: Client rewrite β-testing

Postby PoisonedPorkchop » Tue Jan 28, 2020 4:26 pm

Looks good, pretty smooth so far with testing. Any plans (when graphics options are implemented) to have a vsync option? I hate my fps being capped, as I have a 2080 Ti.

Can't check now, but it feels like when I move my camera doesn't start following for like half a second, so it feels behind like half a second. Not really an issue, just an oddity. Can't remember if the normal client does this.

Good work!
PoisonedPorkchop
 
Posts: 52
Joined: Tue Jun 03, 2014 10:37 am

Re: Client rewrite β-testing

Postby loftar » Tue Jan 28, 2020 7:23 pm

PoisonedPorkchop wrote:Any plans (when graphics options are implemented) to have a vsync option? I hate my fps being capped, as I have a 2080 Ti.

Yes, but for now, you can turn it off with :vsync off.

PoisonedPorkchop wrote:Can't check now, but it feels like when I move my camera doesn't start following for like half a second, so it feels behind like half a second. Not really an issue, just an oddity. Can't remember if the normal client does this.

The new client, just as the current one, has about 3 frames worth of input latency when it is GPU-bound (or vsync-bound, which is effectively the same as being GPU-bound), which does suck quite a bit. I'm looking into ways of decreasing that without also affecting throughput, but one workaround for now is to, as just described, turn off v-sync and instead explicitly cap the frame rate to something less than the maximum that the GPU can produce, such as with :hz 60. Doing so puts the cap at the front of the rendering pipeline instead of at the back of it, which minimizes input latency.
"Object-oriented design is the roman numerals of computing." -- Rob Pike
User avatar
loftar
 
Posts: 8926
Joined: Fri Apr 03, 2009 7:05 am

Re: Client rewrite β-testing

Postby shubla » Thu Jan 30, 2020 8:01 pm

Fps at my village rises from 35 to 65, must thank loftar again for actually improving the performance with the rewrite!
Image
I'm not sure that I have a strong argument against sketch colors - Jorb, November 2019
http://i.imgur.com/CRrirds.png?1
Join the moderated unofficial discord for the game! https://discord.gg/2TAbGj2
Purus Pasta, The Best Client
User avatar
shubla
 
Posts: 13043
Joined: Sun Nov 03, 2013 11:26 am
Location: Finland

Re: Client rewrite β-testing

Postby loftar » Fri Jan 31, 2020 12:34 am

shubla wrote:Fps at my village rises from 35 to 65, must thank loftar again for actually improving the performance with the rewrite!

I'm glad you're seeing real gains from it. Now just remains your task of porting your client to it. ;)
"Object-oriented design is the roman numerals of computing." -- Rob Pike
User avatar
loftar
 
Posts: 8926
Joined: Fri Apr 03, 2009 7:05 am

Re: Client rewrite β-testing

Postby ubersheva » Fri Jan 31, 2020 7:32 am

Any news on the mac client? It still doesnt launch with invalid state error. Like something ogl-related is being done on the wrong thread. I can install eclipse and help debugging it on mac if needed, but i’m completely unfamiliar with 3d programming.
ubersheva
 
Posts: 67
Joined: Thu Apr 15, 2010 8:13 am

PreviousNext

Return to Announcements

Who is online

Users browsing this forum: Python-Requests [Bot] and 16 guests