Jump to content

Josh

Staff
  • Content Count

    15,951
  • Joined

  • Last visited

Status Updates posted by Josh

  1. Another animation performance test here:
    https://www.leadwerks.com/community/topic/17307-animation-test-2/

     

    1. josk

      josk

      Coming up with Sorry dont have permission to view.

    2. josk

      josk

      View it from picture at top of forum, crazy  attacking Goblins, nice.

    3. gamecreator

      gamecreator

      Guessing the thread's in the Leadwerks 5 forum so some people can't access it.

    1. Josh
    2. Crazycarpet

      Crazycarpet

      Only $2000? sold. :lol: But in all seriousness, so overkill for gaming alone... at a point your GPU, and other hardware is going to become your bottleneck rather than being CPU-bound, this point probably comes way before you hit even 10 cores at maximum usage, lol.

    3. Josh

      Josh

      I can max out those cores with the new engine.

    4. Show next comments  21 more
  2. I’m 1000 feet underground in a Polish salt mine. Great setting for a game level. Looks a lot like Dear Esther.

    1. Rozen Software

      Rozen Software

      I've been there over two years ago. Wonderful, magical and very healthy place. I wanted make a game about ghosts lurking in those mines some time ago in Leadwerks engine. Maybe I will return to this idea soon. Have a nice trip in Poland Josh!

  3. Josh is in Poland!

    1. Josh

      Josh

      I came to see castles and it did not disappoint. Poland is actually super nice.

    2. Josh

      Josh

      Going to Wieliczka Salt Mine today. Look it up. 😁

    3. wayneg

      wayneg

      Looked at some pictures, wow, freaking awesome. 

       

    4. Show next comments  21 more
  4. I'm glad the technical Q&A forum is catching on and people are marking the right answers. Good job everyone!

  5. Hexadecimal numbers are stupid and annoying.

    1. Charrua

      Charrua

      i still do some low level programming and, when a float or integer value is transmitted on a serial link, byte order is relevant. And when in low level bits, bytes binary and hexadecimal are a must.

      But when not in "low level mode" i transform my self to a High level man, and thus, hate hex numbers :)

       

    2. wayneg

      wayneg

      I have no doubt, with some practice Josh will master numeric bases.

      I felt the way Josh did back in the 70's. I still use hex today for data dumps, encryption and higher order bases for compression. It's mathematics and it's beautiful thing.

       

       

    3. Slastraf

      Slastraf

      good that today it is almost not needed... Admittedly I know what hex is and how to count to F , but not much more than copy pasting memory values at best.

    4. Show next comments  21 more
  6. Finishing out the render tweening in anticipation of animation. It's quite groundbreaking stuff, but in retrospect I can't imagine designing a game engine any other way, it makes so much sense.

  7. Another good idea works! Animated models will use instanced rendering in Leadwerks 5, with support for up to 4096 bones.

    1. Josh

      Josh

      Currently animated models are not, since the bone matrices change each frame. Leadwerks 5 stores all entity matrices in a single texture, so they can all be accessed by an instanced shader.  Also, animation updating will be performed on a separate thread, so I think we can have lots and lots of characters. We will see how fast I can make it.

    2. martyj

      martyj

      @Josh,

      You should allow the option to re-skin each different animated model as well.

      Currently if you take a model and apply a new skin to it, the change effects all the models like it. To get around this I have to load each player model for every instance in the game. 

    3. Josh

      Josh

      I plan on supporting texture arrays, so that might be a way to do this. (All skins need to be the same resolution and format.)

    4. Show next comments  21 more
  8. Culling time for 100,000 objects on the CPU has been brought down to 1-4 milliseconds!

  9. Seriously cannot believe how fast Leadwerks 5 runs!

    1. wayneg

      wayneg

      Lighting fast Leadwerks 5 and $499 HTC Vive be good match ?

  10. 4K, 240 hz, HDR, monitor technology is finally moving forward, but you can't have everything in one screen.

  11. Did not see much performance gain when multithreading the octree, to my surprise. I saved less than 10% when splitting it up into 8 threads.

  12. Is there a royalty-free library of BRDFs available anywhere?

    1. Josh

      Josh

      @Thirsty Panther There are no BRDFs included. :(

    2. Thirsty Panther

      Thirsty Panther

      Oh sorry.

      There is this set for academic use.

      https://www.merl.com/brdf/

    3. Josh

      Josh

      Strange that for all the requests I get for this, no one seems to actually have any content to use with it.

    4. Show next comments  21 more
  13. 60 FPS with 1,000,000 entities in the world...on INTEL graphics!

    1. tipforeveryone

      tipforeveryone

      Josh,  show us a video :D ? We need to see this awesomeness!

    2. aiaf

      aiaf

      Looking forward to testing this, Intel graphics getting better with new processors, I think can play Dota 2 with about 30fps

    3. theskb

      theskb

      What will be the be the best graphics card to run this game very smoothly or other games like GTA5, PUGB ect any suggestion? still, i am looking to choose a new graphics card or you can say want to upgrade my previous card. I have decided a card from this list http://www.thebestadvices.com/best-graphics-cards/ASUS GeForce GTX 1060 6GB Dual-fan OC Edition will be a good choice it costs around 350$ bucks and comes in my budget. Should i go for it?.

    4. Show next comments  21 more
  14. Switching up the threading design to make things even moar faster. Basically, the rendering thread has top priority and everything else in the game is just in support of that.

    1. Josh

      Josh

      The new design reduces latency and makes the rendering thread independent from the culling speed. Is good. 

    2. Ma-Shell

      Ma-Shell

      Why would you want to separate rendering and culling? That would only make this undesirable effect where objects are popping up if you spin too fast only worse

    3. Josh

      Josh

      Nothing is allowed to slow down the rendering thread, and there are tricks like predicting the next camera frustum that minimize errors.

  15. 100,000 entities. LE4: 9 FPS. LE5: 115 FPS. :)

    1. Josh

      Josh

      If I keep this up, the new engine will be an order of magnitude faster than every other engine in the world.

    2. tipforeveryone

      tipforeveryone

      That is what we need Josh, all game developer I mean hhehe

    3. Phodex Games

      Phodex Games

      @Josh I wish you the best of luck to achieve this goal :) because I really like the engine

    4. Show next comments  21 more
  16. Leadwerks 5 is so fast that integrated graphics might even be fine for VR. I cannot believe how well this is working!

  17. Another great day working on Leadwerks! I love you all.

    1. tipforeveryone

      tipforeveryone

      How is it going ? :) glad to hear that

    2. Josh

      Josh

      I'm working to split the rendering and culling thread now into two separate threads, for ultimate performance.

    3. CangoJoe

      CangoJoe

      " Another great day working on Leadwerks! I love you all. ", said the man who just got a new gf. ;) Good luck!

  18. Single-pass stereoscopic rendering using a geometry shader to double up the geometry works!

    1. wayneg

      wayneg

      Have to buy vive now with all this new speed on horizon.

  19. I got basic render tweening working. Game thread is running at 30 updates per second while the rendering thread gives 1200+ FPS with perfectly smooth motion. The idea works.

  20. Really interesting stuff...I'm running my game loop at 10 FPS and my rendering loop is running at 1700 FPS! Definitely requires a change in paradigm.

  21. Cool C++ example of a working command buffer here: https://www.leadwerks.com/community/topic/17251-syncing-objects-between-threads/

    This is great for multithreading.

  22. It is so cool to revisit an old design and approach it with totally new design parameters. The new renderer introduces constraints we did not have before, but the resulting system is capable of incredible levels of performance beyond anything that's ever been done.

    1. gamecreator

      gamecreator

      I'm curious about numbers for things like this and the model loading improvement.  Tempted to create a test scene/program.

    2. Josh

      Josh

      I will definitely have benchmarks showing different versions of the engine under heavy loads.

  23. Started working on our new zero-overhead renderer for maximum FPS. Very interesting stuff!

    1. Ma-Shell

      Ma-Shell

      Will the new one be based on Vulcan or did you abandon that thought?

    2. Josh

      Josh

      I am going to implement the architecture with the existing OpenGL rendering code and then see if MoltenVK supports everything we need.

    3. Josh

      Josh

      The World::Render() function has been replaced with this. It just iterates through all modified objects, sends the data to the culling thread, and returns. So the entire time of rendering disappears from your game loop:

      void World::Render(shared_ptr<Buffer> buffer)
      {
      	auto gfxdriver = GameEngine::GraphicsDriver();
      	shared_ptr<SharedObject> o;
      	gfxdriver->cullsyncmutex->Lock();
      	gfxdriver->rendertarget = buffer;
      	for (auto it = gfxdriver->modifiedobjects.begin(); it != gfxdriver->modifiedobjects.end(); ++it)
      	{
      		o = (*it).lock();
      		if (o == nullptr) continue;
      		o->Sync();
      	}
      	gfxdriver->cullsyncmutex->Unlock();
      	gfxdriver->modifiedobjects.clear();
      }

       

×
×
  • Create New...