94 lines
1.9 KiB
Text
94 lines
1.9 KiB
Text
Project stuff:
|
|
---------------
|
|
|
|
* Select project
|
|
* Create project
|
|
* "Bundles" (i.e. scripts + shaders) w/ import/export
|
|
|
|
|
|
Capabilities:
|
|
--------------
|
|
|
|
* Compute shaders
|
|
* Mostly done, need barriers
|
|
* Buffers & instancing
|
|
* Only one triangle for fullscreen
|
|
|
|
|
|
Compiler / emulator:
|
|
---------------------
|
|
|
|
* Spill values in the FPU stack runs out
|
|
* More checks in the execution engine
|
|
* Check for overrides on the same inputs when setting things up
|
|
* Aliases
|
|
* Display errors in UI
|
|
* Includes
|
|
* Shader paths relative to scripts (will require different way of handling
|
|
libraries)
|
|
|
|
|
|
Optimizer:
|
|
-----------
|
|
|
|
* Dead code elimination
|
|
* Unused arguments
|
|
* Dead store: call arguments
|
|
* Unused functions
|
|
* Unused inputs
|
|
* Common subexpressions
|
|
* Strength reduction
|
|
* Loop-invariant code motion (esp. uniforms and var defs)
|
|
* Sampler re-use
|
|
* (Output only) Texture / framebuffer re-use
|
|
* Code clean-up
|
|
|
|
|
|
Sequencer:
|
|
-----------
|
|
* Mouse controls for overrides
|
|
* Zoom level is mostly useless, fix it
|
|
* Save/restore sets of tracks
|
|
* Edition buttons in toolbar
|
|
* Multiple points selection
|
|
* Moving tracks
|
|
* Moving segments
|
|
* Add curve display
|
|
* CLEAN UP THAT FUCKING SPAGHETTI MESS!
|
|
|
|
|
|
Synth:
|
|
-------
|
|
* Node editor
|
|
* Synth blocks
|
|
* Mixer
|
|
* Oscillators
|
|
* Noise generators
|
|
* Enveloppes
|
|
* Filters
|
|
* Delay buffers
|
|
* Panning
|
|
* Gain
|
|
* Distortion
|
|
* Synth code generator
|
|
|
|
|
|
UI:
|
|
----
|
|
* General overhaul (e.g. use tabs)
|
|
* Color grading controls:
|
|
* White balance control in components tab
|
|
* Don't reset when hitting value or saturation 0
|
|
* Camera
|
|
* Control for up vector - check if something more appropriate exists?
|
|
* Vector controls are too sensitive
|
|
* Build configurations (requires tabs)
|
|
* Moar keyboard shortcuts!
|
|
|
|
|
|
Producing output:
|
|
------------------
|
|
* We need the synth done first. General idea:
|
|
1/ Generate assembly code for the init and main loop
|
|
2/ Generate executable
|
|
3/ Start working on Frankencoding
|