Jump to content

The Roadmap


Recommended Posts

So, while we've obviously discussed a lot about what's being worked on, what the plan for 4.0 is and other future-looking notions, we haven't really laid down a specific plan - a roadmap.


So, having mulled on it for the past bit, I figured I'd go ahead and hash out the near-term plans to lead us to 4.0, and then what we expect to be done in the builds following. Obviously, it's merely a roadmap, not ZE GRAND PLAN TO END ALL PLANS and so timings and what-happens when can shift around, but I think it'd be fair to say this is what we're shooting for.

 

  • 4.0
    • August
      • Get the initial build of PBR done, and locked in and merged. Trying to finalize the Screen-Space Reflections currently and then it should be pretty much ready for the initial PR
      • Get module-ifcation of core directory of BaseGame template finalized and in.PR for this is live, here: #2272
      • Initial framework of the RenderPipeline stuff brought in and running - merely replicate existing render path, no changes to rest of render code or materials/shader system.Cleanup for PR underway, should be done this weekend
      • Begin some of the suggested Clean Core work - reorganizing and compartmentalizing files better.

[*]September
  • Focused push to convert all game classes to E/C and GameObject instances, and flag the originals as deprecated
  • Get module-ifcation of core directory of BaseGame template finalized and in.PR just needs testing and merging
  • Begin module-ification of tools directory.Initial tests on this have started. Still need to see how difficult the main World Editor scriptbase itself will be to module-ify
  • Begin focus on polishing up workflow, making Asset Browser the pipeline focus.Started plotting changes made from my personal build into various PRs to flesh out the assets and the browser making it the tool it needs to be
  • Make BaseGame template primary template
  • Begin integration of Assimp into art workflow. Per latest workblog update. Effort on this has begun
  • Finalize decision if Material refactor will be in for 4.0 or not.Will happen post 4.0

[*]October
  • If we're doing the Material refactor for 4.0, this would be the main focus - streamlining and standardizing the render pipe via the new material system.Will happen post 4.0
  • Begin building out examples and Rapid Prototype Kits
  • Have the platform stuff finalized and cleaned up, having SDL as the main platform layer
  • A few of the in-progress tool additions such as CSG can get more attention to try and lock in.
  • Begin designing out asset store in earnest to act as a focal point for examples, RPKs, addons, etc

[*]November
  • Emphasis on QOL improvements, bugfixes and beginning of testing/polish phase.Been accruing a list of issues with the new template to fix along these lines.
  • Establish RC builds, test aggressively.
  • Any last minute additions missed prior can get focus during this time.

[*]December
  • Release!

[*]4.1
  • Emphasis on render pipeline work - fully fleshing out the customizable render pipeline.
  • If Material Refactor didn't go in for 4.0, it'll go in here
  • DLLs, plugins, etc go here.
  • Possible rework of the terrain system.

[*]4.2
  • Look into overhaul of terrain system - Virtual Texturing and more flexible LOD system.
  • New render API system, Vulkan

 

4.0's been cooking for some time, not least of all because of how much it improves and changes, but once it goes out the door, we should be in a position to push updates out at a much more regular cadence, as a lot of the required groundwork for other changes will be done already.


Also, I think we can look at doing a 3.11 build of a "Everything that's not a major overhaul change" sendoff build to bridge the gap between 3.10.x and the major changes going into 4.0 like PBR and the like somewhere around the end of September.


Again, this is just a tentative plan, there's no guarantee this is exactly how it'll go, but I think it's fairly reasonable to shoot for, and it lets you fine folks in the community have an idea of what to try and target. If there's something I've missed that should be specifically called out on the list, or a question of when X would likely fit in, feel free to mention it below. As we progress, we can mark off the bits on the roadmap here so people can better keep a head about how things are progressing.

Link to post
Share on other sites

@Julius Yep, that'd be part of the initial RenderPipe work I mentioned for August. Pulled the associated code back out and got it working against devhead again, so on that side of things, mostly just need to do a codereview of it and add a few bits and bobs I wanted to make sure were in there on the first go(like being able to add type masks to the cameras so certain cameras can filter out what they render in a simplified way)


Would also note that the modulification of the core dir is mooostly done, just gotta give it the run-through, cleanup and make sure everything feasible is documented/has comments before that bad boy goes in.


And if you want ongoing progress about the PBR work, feel free to pop into the discord, me and Az are hammering on it pretty much daily :P

Link to post
Share on other sites

Sounds good, Jeff. I've been out of the loop for the last few weeks due to crunch mode at work but I haven't forgotten about the E/C stuff. I've tinkered with getting a new Item 'class' up and running with components. Plan to work through the list of existing classes and convert what I can to components sometime next month.

Link to post
Share on other sites

@Headclot

Yeah, I think that'd be a good way to go about it. I was figuring we'd do like a rolling update at the conclusion of each month, but it'd probably feel a little more dynamic to go with the immediate updates.


@Code_Man:

Big bits would be Physically Based Rendering(PBR) and subsequent likely changes to the material system being biggies as that'll change how you do art with the engine.

Beyond that, the shift over to the Entity/Component system'll mean there'll be some changes to behavior of Game Classes, but the intent is to keep the end result behavior the same.

Module/Asset system'll change how the files of the game itself are structured.


Otherwise, broad functionality'll stay the same on the front end. You'll still use TorqueScript, same general setup for the tools, etc.

Link to post
Share on other sites

With the roadmap for version 4.2, i am back now working on the first large thing i have done with T3D for quite some time, i am writing a new gfx layer that will use The-Forge (ConfettiFX is the company that the graphics guru Wolfgang Engel created). The-Forge will serve as a new backend for rendering and i will be creating some higher level classes/functions etc around it, this will bring Direct3D11, Direct3D12, Vulkan and Metal 2 support along with a very modern API, it will also use a single shader language based around hlsl which will simplify shader complexity. Going to take some time as it is a huge job, hence it has been earmarked for version 4.2 at this stage.

Link to post
Share on other sites

@Timmy: I think once we get it functional, we need to have a test map to demo/test features and have a corner that's a 'confetti party' - aka a million bloody confetti particles flying everywhere at all times :P


You know.....for testing.


Also, did an update for the August milestone. Running a little behind, but most of the work should be PR'd for testing(if it isn't already) by the end of this weekend.

Link to post
Share on other sites
  • 3 weeks later...

Any plans for GL ES2 and Android + small boards like OrangePI?


Looks really cool T3D progresses, Thanks a lot for your time Jeff!

 

Hey I am not JeffR but I know that there are plans for Vulkan, Metal 2, and Dx11 and Dx12 via ConfettiFX. However that is planned for 4.2. :)

 

With the roadmap for version 4.2, i am back now working on the first large thing i have done with T3D for quite some time, i am writing a new gfx layer that will use The-Forge (ConfettiFX is the company that the graphics guru Wolfgang Engel created). The-Forge will serve as a new backend for rendering and i will be creating some higher level classes/functions etc around it, this will bring Direct3D11, Direct3D12, Vulkan and Metal 2 support along with a very modern API, it will also use a single shader language based around hlsl which will simplify shader complexity. Going to take some time as it is a huge job, hence it has been earmarked for version 4.2 at this stage.

Link to post
Share on other sites

There are no future plans for any version of the GL family, in fact opengl will be removed entirely when the-forge is in place. Not sure what your project requirements are but you could possibly check out torque2d, it has android with es 2 support.

Link to post
Share on other sites

Yep, as @Headclot and @Timmy stated, the new GFX layer will utilize Vulkan, so OpenGL will be deprecated out.


New android phones going forward will be working with Vulkan, so while older models may have problems with support(depending on if the manufacturers keep up with updates to push out the drivers for Vulkan or not, that's getting much easier as time goes on) basically from now and forward, we can expect a large amount of android phones to support Vulkan, so it makes sense to roll with.

Link to post
Share on other sites
  • 3 months later...

Yeah, I'll be doing an update on it this weekend. Between holidays, getting my dumb butt sick and some fun shenanigans at work, it's been more hectic than anticipated so I haven't been keeping on it as well as I could.


For the component work, by all means, push that stuff along.

If I've already got something comparable for a bit, I'm sure there's still some improvements to it that could be done, so it's far better for you to get it pushed and we can examine it.

And(the more likely case) I haven't done a given part yet and it just gets rolled in. :)

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...