blob: 227110d5e4278c4611189be985a0d8b567f10a32 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
I haven't touched the actual wallpaper engine implementation of this project in years...
if I had the motivation to continue working on a project like this, I would probably
start from scratch. I could have made much better use of available reverse engineering
tools (mainly renderdoc) to avoid the tons of trial and error that produced the convoluted
logic contained in this code.
TODO:
[ ] make gl_enabled toggleable in code (i.e. toggleable at runtime)
[ ] objects with blendmode other than 0 have extra pass using blendpassthrough shader
[ ] more acurate visualizer
Not Implemented:
[ ] mouse paralax
[ ] camera shake
[ ] particles
[ ] javascript scripting
And much, much more...
Known Issues:
./mauri ../../../c/workshop_wallpapers/1703298496/scene.pkg
- xray only works in the middle
./mauri ../../../c/workshop_wallpapers/2212570435/scene.pkg
- eyes not positioned correctly
./mauri ../../../c/workshop_wallpapers/1829251189/scene.pkg
- xray is flipped/flickering
./mauri ../../../c/workshop_wallpapers/2216609166/scene.pkg
- left side not drawing?
./mauri ../../../c/workshop_wallpapers/2178257725/scene.pkg
- rotate breaks it
./mauri ../../../c/workshop_wallpapers/1938288759/scene.pkg
- visualizer not drawn correctly
./mauri ../../../c/workshop_wallpapers/2157658616/scene.pkg
- parse error
./mauri ../../../c/workshop_wallpapers/1778616550/scene.pkg
- first object has different blendmode, so we need to handle "combine" passes differently.
The final pass should draw to the objects framebuffer as well as to the combine buffer,
but using the "passthroughblend" shader.
And many others that either crash or are completely broken.
|