SceneView.txt 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. TODO:
  2. - Core thread gets stuck on shutdown when OpenGL is used...Somewhere in kernel
  3. IMMEDIATE:
  4. - SceneGrid is very ugly. Consider using default lines for now and come back with a better approach later.
  5. - Potentially enable line AA?
  6. - In Picking code I don't set main texture when rendering with alpha
  7. - Picking code is completely untested and will likely need major fixing
  8. - Disable DX9 for editor as I will likely want to use geometry shaders for icon rendering, and possibly new AA line shader
  9. - Or just use MeshHeap and update the icon/lines every frame?
  10. - Test all the new DrawHelper3D methods
  11. GIZMO TODO:
  12. - IMPORTANT: Gizmo rendering happens in update() but it should happen whenever scene view is being rendered as the render target isn't set anywhere
  13. - Add a method that renders gizmos for picking
  14. - Figure out how to deal with builtin components like Camera and Renderable (e.g. how will they have gizmos since they're not managed components?)
  15. LATER:
  16. - Need a way to render text for gizmos and handles, and in scene in general
  17. ----------------------------------------------------------------------
  18. Handles
  19. - Make a few different base handle types:
  20. - Slider 1D (e.g. for movement using an arrow cap)
  21. - Slider 2D (e.g. for movement in 2D using a plane render)
  22. - Similar for scale/rotation handles (see Unity for its implementations of those)
  23. Handles should have colliders which will be queries whenever user input is detected in scene view
  24. If any handle is hit the input will not proceed further (e.g. no picking will be done) and that handle control
  25. will become active.
  26. Base handle types should just be positioned in space and then return value every frame as user moves them.
  27. - This way they can also easily be used from C# for custom user-made stuff
  28. TODO - Think about this
  29. See for inspiration: http://docs.unity3d.com/ScriptReference/Handles.html
  30. ----------------------------------------------------------------------
  31. Rendering selection
  32. Get the mesh from the selected Renderable
  33. Draw that same mesh again using a shader that grays out the original
  34. The second mesh will likely need to use depth bias (sloped depth bias too?)