Client performance rant

Forum for alternative clients, mods & discussions on the same.

Re: Client performance rant

Postby Granger » Fri Jul 21, 2017 2:42 pm

ekzarh wrote:
Granger wrote:viewtopic.php?f=48&t=57609 - somewhere in that topic. Would need resources (and most likely a server that can be distributed), but doable.
And would be extremely cool.

The thing is - it does not.
Right now server has a LoS implemented. It is about 50-60 tiles radius.
So yes - server already has:
for(every object in 4 surrounding grids){
if(player.distance(object) < 60 tiles){
renderlist.add(object)
}}

If we pass any number instead of constant '60' we can achieve any pitch-darkness. With modifications I've listed before - seeing player behind a wall and having houses in same dimension.

The NOX game style is way more complicated because it is based on direction player looks. So we either have '360-degree los mod' possiblity or overload server CPU with player direction vs visibility checks.

Render range (as implemented) and Line Of Sight are vastly different mechanics, with the latter you can't look through walls.
⁎ Mon Mar 22, 2010 ✝ Thu Jan 23, 2020
User avatar
Granger
 
Posts: 9263
Joined: Mon Mar 22, 2010 2:00 pm

Re: Client performance rant

Postby ekzarh » Fri Jul 21, 2017 5:13 pm

Granger wrote:Render range (as implemented) and Line Of Sight are vastly different mechanics, with the latter you can't look through walls.

True. But for fixed-shape structures (like inside/outside houses) you can get illusion of line of sight without actually doing what is needed for it.

Haven't seen 'real' line of sight in mmo games with server checks yet :( Does anyone have any examples?
User avatar
ekzarh
 
Posts: 323
Joined: Tue Dec 20, 2011 9:42 pm

Re: Client performance rant

Postby xdragonlord18 » Tue Aug 01, 2017 7:57 pm

i no that javascript has already been talked about and shot down but i figured it wouldnt hurt to mention that webassembly is coming along nicely and is something that loftar may want to watch as it could solve the cross platform c++ problem pretty nicely its currently on by default in current versions of chrome safari opera edge and firefox and has cross browser consensus on the w3c standard so it should behave in a standard way across all browsers and platforms unlike asm.js
Ysh wrote:You all forget that bucket is include. I think with bucket it is fair price.
User avatar
xdragonlord18
 
Posts: 623
Joined: Sat Apr 16, 2016 3:25 am

Re: Client performance rant

Postby Gigglepuddy » Thu Aug 24, 2017 4:43 pm

javascript cannot use hardware rendering. it does not happen. thats why you cant utilize the GPU of any users, because javas limitations require everything to be ran through software, i.e. the CPU. it claims to support "hardware acceleration" but that does not mean GPU acceleration, hence why no game or program ever using java has been able to actually use the GPU for more than the end render to monitor.
Gigglepuddy
 
Posts: 90
Joined: Tue Mar 07, 2017 7:36 pm

Re: Client performance rant

Postby Granger » Fri Aug 25, 2017 3:22 pm

Gigglepuddy wrote:javascript cannot use hardware rendering. it does not happen. thats why you cant utilize the GPU of any users, because javas limitations require everything to be ran through software, i.e. the CPU. it claims to support "hardware acceleration" but that does not mean GPU acceleration, hence why no game or program ever using java has been able to actually use the GPU for more than the end render to monitor.

Additionally to confusing java with javascript you're also wrong as both can call into OpenGL that then makes the GPU render the graphics, including shaders.

Javascript in the browser runninc GPU accelerated graphics, one example: http://www.playkeepout.com/
⁎ Mon Mar 22, 2010 ✝ Thu Jan 23, 2020
User avatar
Granger
 
Posts: 9263
Joined: Mon Mar 22, 2010 2:00 pm

Re: Client performance rant

Postby Granger » Thu Sep 07, 2017 12:39 am

On further thought:
loftar wrote:[*]As a corollary, it would be nice if such a system could be formulated so that changes can be effected in parallel from the rendering loop itself, so that rendering wouldn't have to be blocked by objects popping in and out, leading to less stuttering.

You could 'double buffer' the dataset for the seldom-changing static objects (ground and non-moving stuff on it):
- one owned by the render thread and actively being fed into/used by the GPU
- one owned by the update thread that builds the static world with new data delivered by the server or, when complete, free to be taken over by the render thread
- possibly another one for the update thread to work on while the one before is still waiting to be claimed by the render thread

The render thread could happily render frames as fast as the GPU can (would only need to update the list of dynamic, moving objects - players, mobs, animation states like cycling through meshes, object rotation like the windmill, texture offset animation for fires and such) and would only have to check once per frame if a new static data set is ready for use (in case it isn't it would simply reuse the data from the last frame as the world hasn't changed). The update thread could also run freely and release the new state to the renderer when the network input queue is empty (for long enough) and/or a certain timespan has passed or a certain amount of new objects has been processed (to not stall the world update when the scenery changes massively, eg. passing through portals) and the prior completed dataset had been claimed by the renderer.
⁎ Mon Mar 22, 2010 ✝ Thu Jan 23, 2020
User avatar
Granger
 
Posts: 9263
Joined: Mon Mar 22, 2010 2:00 pm

Re: Client performance rant

Postby linkfanpc » Thu Oct 26, 2017 3:22 pm

I REALLY don't wanna sound antsy, but if i could ask, how is everything going along with the re-write? I'm super excited to be able to finally play Haven again.
Waiting for something to happen? Everything is going to be okay.
jorb wrote:Hitting a "Ghejejiiwlonk" with your "Umappawoozle" for eightyfifteen points of "Sharmakookel", simply makes no sense.

W7: Semi-Hermit
W8: Semi-Hermit
W9-13: Lawspeaker of villages of myself-4 people.

There's SOMETHING behind you.
User avatar
linkfanpc
 
Posts: 2054
Joined: Wed Aug 05, 2015 7:07 pm
Location: Black Space

Re: Client performance rant

Postby jordancoles » Wed Nov 01, 2017 2:56 am

How is the client work looking now Loftar?
Duhhrail wrote:No matter how fast you think you can beat your meat, Jordancoles lies in the shadows and waits to attack his defenseless prey. (tl;dr) Don't afk and jack off. :lol:

Check out my pro-tips thread
Image Image Image
User avatar
jordancoles
 
Posts: 14015
Joined: Sun May 29, 2011 6:50 pm
Location: British Columbia, Canada

Re: Client performance rant

Postby svino » Wed Nov 01, 2017 11:43 am

jordancoles wrote:How is the client work looking now Loftar?


Leaked footage from loftars new test client:

User avatar
svino
 
Posts: 294
Joined: Mon Jun 06, 2011 4:09 am

Re: Client performance rant

Postby iamahh » Wed Nov 01, 2017 12:38 pm

dis legit ¦]
iamahh
 
Posts: 1810
Joined: Sat Dec 12, 2015 8:23 pm

PreviousNext

Return to The Wizards' Tower

Who is online

Users browsing this forum: Naylok and 5 guests