1 | TODO
|
---|
2 | ==========
|
---|
3 | -Add code to allow for resizing/maximizing the window
|
---|
4 | - Doesn't seem to be necessary on OSX anymore, check that in works on Window and Linux, including removing
|
---|
5 | the window title bar in fullscreen mode and bringing it back in windowed mode
|
---|
6 | -Update the IMGUI code in a generic way to support this as well
|
---|
7 | -Check the book's "Printing Parameters from the GL Context" to output a bunch of OpenGL context params
|
---|
8 |
|
---|
9 | DONE
|
---|
10 | ==========
|
---|
11 | -Print a warning if texture images don't have sizes of 2^x
|
---|
12 | -Fix the texture-mapping code to not flip the texture upside down.
|
---|
13 | -Make sure fullscreen works correctly on OSX. Check the book to see how to handle Retina Display.
|
---|
14 | -Change all error messages to use the logger class so they get printed to the log file as well.
|
---|
15 | -Change the logger class to use cout instead of printf. Consider how easy variable argument support would be.
|
---|
16 | - What I really need to do is completely refactor the logger class to return an ofstream to the logger file
|
---|
17 | and use streaming to send output to it. The log file can be closed in the destructor.
|
---|
18 | -Move some common functions into a Utils class
|
---|
19 |
|
---|
20 | NEW TODO
|
---|
21 | ==========
|
---|
22 | -Unbind buffers (by binding to 0) once I'm done using them. This will help catch errors faster where I'm using a different buffer than I expect.
|
---|
23 |
|
---|
24 | NEW DONE
|
---|
25 | ==========
|
---|
26 | -Move buffer memory allocation code into populateBuffers()
|
---|
27 | -Go through the large design comment blocks and clean them up. Turn them into documentation for the code that's been written since I wrote the designs.
|
---|
28 | -Show the fps in a gui component instead of printing it to the console
|
---|
29 |
|
---|
30 | MAJOR TASKS TODO
|
---|
31 | ==================
|
---|
32 |
|
---|
33 | MAJOR TASKS DONE
|
---|
34 | ==================
|
---|
35 | -Investigate switching to SFML, i.e. create a simple demo of SFML with OpenGL and ImGui
|
---|
36 | -The SFML graphics module requires the compatibility profile, which on OSX is only available for OpenGL < 3.0
|
---|
37 | -I don't think ImGui would work with SFML
|
---|
38 | -When the time comes, maybe just try using the networking and audio components of SFML
|
---|
39 | -Implement lasers
|
---|
40 | -Figure out why rendering doesn't work on the Windows laptop
|
---|
41 |
|
---|
42 | STEPS TO SWITCH OFF OF GLOBAL VBOS
|
---|
43 | ===================================
|
---|
44 |
|
---|
45 | 2. Inside populateBuffers, check for the object type and resize all buffers of that type (will eventually do this in a loop)
|
---|
46 |
|
---|
47 | STEPS TO SWITCH OFF OF GLOBAL VBOS DONE
|
---|
48 | ========================================
|
---|
49 |
|
---|
50 | 1. Remove buffer re-assignment when creating shader model groups
|
---|
51 | 3. In copyObjectData, set vertex_vbo_offset for the object type only using numPoints, not vbo_base
|
---|
52 | 4. in renderScene, change the glDrawArrays call to use an offset of 0
|
---|
53 |
|
---|
54 | LONGTERM TODO
|
---|
55 | ==============
|
---|
56 |
|
---|
57 | - Switch from IMGUI to Allegro
|
---|
58 | - Correctly align UI elements when the window is resized
|
---|