/Jay3DGame

Creating a small sideproject using current 3D engine

Primary LanguageJava

Jay3DGame

This is mainly a side-project(to test the current strength of my engine) that is based off my engine's latest commit(Commit #57) if you wish to review it at the point in time.

The engine itself won't be touched in any way(or maybe some minor reworks here and there), therefore anything I need to add will be done once the side-project is done.

Things to add to the engine:

  1. Insert game inside the engine
  1. Better scratchpad support
  2. Better textures (reading, blitting, basic image processing)
  3. Some way to seperate Game and Engine data
  4. Add higher level rendering constructs (Shaders, materials, meshes, transforms)
  5. Add some form of automatic shader selection
  6. Add some form of primitives(Rectangle, circles, spheres, triangles)
  7. More flexible transform class(Default values for projection and camera)
  8. Non-perspective views (Orthogonal views)
  9. Texture manipulation (Translation, rotation, scale)
  10. More control over textures(filtering, formatting etc.)
  11. More friendly constructors(Camera)
  12. Window should have more properties (Center position, fullscreen, maybe mouse locking)
  13. Better Vector math(normalisation, +=, commonly used vector constants, swizzling support)
  14. Options class/system, some place to read values that the player chooses
  15. Centralised "level" or "scene" class that holds the data that the game is using
  16. Game object class
  17. Make naming consistent
  18. Eventually make easier way to generate Mesh
  19. Eventually make easier way of generating texture coordinates
  20. Vector swizzling
  21. Make time seconds instead of nanoseconds
  22. Give vectors a copy constructor
  23. Give vectors an interpolation method
  24. Transparency support
  25. Sprite support
  26. Good way to compare vectors
  27. Vector2f crossproduct method29.
  28. Some way to actually display text(UI)

Notes:

Was relatively fun yet very tedious to code the game. I basically said a big ?#@! you to OO design and have not refactored much code(to stick to the idea of not altering my engine). However it DEFINITELY helped pinpoint the weaknesses of my engine(as of commit #57 in Jay3D public repository)