Jump to content


  • Content count

  • Joined

  • Last visited

Community Reputation

6,735 Excellent

About Josh

Profile Information

  • Gender
  • Location
    San Francisco, CA

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Josh

    Forum skin fixes

    These are just some notes for the developer. Q&A forums not showing indicator in topic view: Downloads categories not shown in mobile view:
  2. Summer Game Tournament begins...NOW!

  3. Josh

    Clustered Forward Rendering

    The new architecture relies on smart pointers. It's incompatible with the current API, Lua binding code, and editor. I think this new rendering approach will give a significant performance increase, particularly on low to mid-level hardware (like I believe you have).
  4. Josh

    Clustered Forward Rendering

    It’s basically just like deferred lighting without the heavy overhead. I’m not sure how well the branching logic would run on mobile graphics, but it would work.
  5. Josh

    Clustered Forward Rendering

    I decided I want the voxel GI system to render direct lighting on the graphics card, so in order to make that happen I need working lights and shadows in the new renderer. Tomorrow I am going to start my implementation of clustered forward rendering to replace the deferred renderer in the next game engine. This works by dividing the camera frustum up into sectors, as shown below. A list of visible lights for each cell is sent to the GPU. If you think about it, this is really another voxel algorithm. The whole idea of voxels is that it costs too much processing power to calculate something expensive for each pixel, so lets calculate it for a 3D grid of volumes and then grab those settings for each pixel inside the volume. In the case of real-time global illumination, we also do a linear blend between the values based on the pixel position. Here's a diagram of a spherical point light lying on the frustum. But if we skew the frustum so that the lines are all perpendicular, we can see this is actually a voxel problem, and it's the light that is warped in a funny way, not the frustum. I couldn't figure out how to warp the sphere exactly right, but it's something like this. For each pixel that is rendered, you transform it to the perpendicular grid above and perform lighting using only the lights that are present in that cell. This tecnnique seems like a no-brainer, but it would not have been possible to do this when our deferred renderer first came to be. GPUs were not nearly as flexible back then as they are now, and things like a variable-length for loop would be a big no-no. Well, something else interesting occurred to me while I was going over this. The new engine is an ambitious project, with a brand new editor to be built from scratch. That's going to take a lot of time. There's a lot of interest in the features I am working on now, and I would like to get them out sooner rather than later. It might be possible to incorporate the clustered forward renderer and voxel GI into Leadwerks Game Engine 4 (at which point I would probably call it 5) but keep the old engine architecture. This would give Leadwerks a big performance boost (not as big as the new architecture, but still probably 2-3x in some situations). The visuals would also make a giant leap forward into the future. And it might even be possible to release in time for Christmas. All the shaders would have to be modified, but if you just updated your project everything would run in the new Leadwerks Game Engine 5 without any problem. This would need to be a paid update, probably with a new app ID on Steam. The current Workshop contents would not be accessible from the new app ID, but we have the Marketplace for that. This would also have the benefit of bringing the editor up to date with the new rendering methods, which would mean the existing editor could be used seamlessly with the new engine. We presently can't do this because the new engine and Leadwerks 4 use completely different shaders. This could solve a lot of problems and give us a much smoother transition from here to where we want to go in the future: Leadwerks Game Engine 4 (deferred rendering, existing editor) [Now] Leadwerks Game Engine 5 (clustered forward rendering, real-time GI, PBR materials, existing architecture, existing editor) [Christmas 2018] Turbo Game Engine (clustered forward rendering, new architecture, new editor) [April 2020] I just thought of this a couple hours ago, so I can't say right now for sure if we will go this route, but we will see. No matter what, I want to get a version 4.6 out first with a few features and fixes. You can read more about clustered forward rendering in this article
  6. Josh

    Camera FOV vs Camera Zoom

    FOV is a bit more intuitive. They do the same thing, but the numbers you input act differently. Internally, I think the FOV command actually calls the zoom command after converting the angle to s zoom factor.
  7. Josh

    Introducing Leadwerks Marketplace

    I added the price to all file thumbnails.
  8. Josh

    Introducing Leadwerks Marketplace

    I just checked the EULA, and there is nothing in there that says what system the content can be used with. Individual DLCs may vary.
  9. Josh

    Introducing Leadwerks Marketplace

    Yes, they are yours to use in any games. Almost all of them include the source art files as well.
  10. Josh

    Introducing Leadwerks Marketplace

    If your Leadwerks account is linked to your Steam account, then the permissions will transfer and you can download that item from its page in the Marketplace. This works for both DLCs and Workshop items. These will also continue to be available on Steam, forever.
  11. Josh

    Introducing Leadwerks Marketplace

    Is there a specific author who's content you would like to see added?
  12. Josh

    Introducing Leadwerks Marketplace

    If the content sells well, then it will be easy to bring in more authors.
  13. Tomorrow comes a BIG SURPRISE for you! 😁

    1. Yue
    2. tipforeveryone


      This status made me surprised anyway hehe. waiting for the real surprise

    3. Marcousik


      Everybody hope certainly one own feature should be upgraded...Well I really hope something with restoring the car system !