4
Version 0.5: 'Graf Zeppelin' [DONE]
5
----------------------------
6
+ Rotations are not around the proper unit cube axis.
7
+ Add global 'set' command
9
+ Preprocessor Comments
10
+ Auto load examples to menu item entry.
12
+ GUI: Rotate about z axis
15
+ (1) with substitution: [ RULE r1 maxdepth 400 > r2 weigth 100 { ... } ]
16
+ (3) plain retirement [ RULE r1 maxdepth 400 weigth 100 { ... } ]
19
+ Scale with 3 parameters.
20
+ Progress dialog w/ cancel.
21
+ Fix multiple windows problems
22
+ 'Color' keyword (for absolute color)
23
+ 'Background' set command
25
+ Add 'Reset button' (for OpenGL view)
26
+ Create a build (resolve dependencies)
28
Version 0.7: 'Nostromo'
29
-----------------------
32
+ Custom Transformation matrix operator.
34
+ Parser should take {,} as delimiters
36
+ Context Menu in 3D GUI: 'Reset View', 'Save Screenshot', 'Full screen'.
37
+ Linux testing (should compile with minimum of error on Linux)
39
Version 0.8: 'Exonautica'
40
-----------------------------------
41
Main Focus: Template rendering
42
+ reproducibility -> control of random seed,
44
+ Add Template Renderer (user customizable text templats)
47
Version 0.8.5: 'Exonautica Reloaded'
48
------------------------------------
51
Version 0.9: 'Kolberger Heide' (or 'Glasnost')
52
----------------------------------------------
53
+ '#define varname value' (preprocessor constant definitions)
54
+ save view as eisenscript code.
55
+ Set initial viewport (create expression by right clicking mouse canvas)
56
+ Add new Polygon/Triangle Primitive
57
+ Export view settings to Template Renderers
60
Version 1.0: 'Potemkin'
61
-------------------------------
63
? GUI for '#define consts' for exploring variations.
65
- VRML/OBJ Template (many requests)
66
- Preferences (saving with QProperties) [For what?]
67
- Installers (for Windows at least - using InnoSetup)
68
- Packaging: Icons, Eula, file associations.
69
? Version object with check for updates on internet.
70
? Drag'n'Drop of EisenScript files.
74
Instead of EisenScript it should be possible to script the object generation using JavaScript.
75
(Qt has a builtin JavaScript interpreter which should make this somewhat easy).
79
Polygon Grammars (a la CGA Shape Grammar)
81
Emphasizing the 'Synth' of 'Structure Synth (Live Coding / Drawing)
82
I want to be able to somehow 'play' and 'compose' structures interactively.
83
I'm thinking about implementing this by making rules dependent on some kind of controller:
84
where the controller is able to change the states or logic. The controller should be implemented as an abstract interface,
85
making it easy to provide multiple implementations: for instance, a mouse controller, an OSC controller (which also would
86
make structure synth 'playable' by the OSC emitter for the iPod Touch, or by the Wii->OSC app), or a controller which reads
87
and parses text into controls (this would make it possible to for instance control the sculpting by providing historical documents,
88
spam or other sources of entropy).
92
Possible Version 1.x extensions:
93
_-------------------------------
95
? Tagging (e.g. [sphereresolution 3 25])
96
- OpenGL settings (as tags): Perspective, Fog, Coloring, Res,
97
? Ellipsoid object. (as of now spheres are always isotropic]
98
? Real transperancy (req. sorting) [Easier now we have defined bounding boxes]
99
? More complex primitives (tube, ...)
100
? Preprocessor '#include' statement
101
? Check for infinite retirement substitution cycles.
102
? Better Progress Bar (include updates for transformations loop, pause button?)
103
? Rule retirement: ? (2) with subst. and revive: [ RULE r1 maxdepth 400 >> r2 weigth 100 { ... } ]
106
Possible version 2.x extensions:
107
--------------------------------
110
- Parameterized rendering (movies)
111
- Random parameters in rule definition
112
- Option for Synchronize random seed per generation. (Each expanded rule starts at the same seed).
113
? 4D geometry, creating animations by slicing through the 4th dimension.
114
? Geometry Distortion plugins (a la fish eye view)
115
? Meta-programming via the [Tag Renderer]