source: GTP/trunk/App/Demos/Vis/FriendlyCulling/toto.txt @ 3296

Revision 3296, 5.0 KB checked in by mattausch, 16 years ago (diff)
Line 
11) change shader system: look into fx files
22) tone mapping
3   bloom (gaussian blur)
4   use downsampling: first 4x4 to luminance then 3 times further to 1x1
5   use 3 new render render targets for this
6
73) mrt channels:
8
92 mrts:
10
11mrt 1: rgba color + emmissive / luminance
12mrt 2: world pos + projected depth
13mrt 3: normals + w coordinate
14mrt 4: flip-flop for mrt1
15
16
174) idea: donwsample color texture for ao
18
195) use depth formula on projected depth (or use linear depth)
20   in order to combine ao + diffuse lookup into on texture lookup
21
22
23reorder mrts:
24
25mrt 1: rgba color + projected depth
26mrt 2: luminance
27mrt 3: normals + w coordinate
28mrt 4: flip-flop with mrt1 / store luminance after ssao
29
30
316) render sun disc
32
33
34
35ssao:
36
371) implement bilateral filtering
382) check physical properties
39
40paper of 2007 arikan formula:
41
42SW(P, C, r) = 2 * pi * (1 - cos(asin (r / |PC|)))
43
44but not working properly!
45
463) normal mapping
47
48working but already done!
49
50
51problems:
52
534) update of converged regions
54
55something could become visible
56
57a) from outside
58b) from previously occluded regions
59
60a) could use ratio of samples outside current frame / last frame
61   but slows donw code
62
635) dynamic objects:
64
65a) make ao stick on object: this should
66   be possible somehow, as the information is still available!!
67 
68   tried to use difference of ao intensity between previous and
69   current frame to find out if pixel ao is not valid anymore.
70   but problems as some flickering was introduced while update of
71   dynamic objects was not fast enough (annoying grey fade effect)
72
73b) fix the contact shadow on the floor:
74
75check when pixel not valid anymore: do that by checking for each
76sample if they were invalidated recently. if so, then invalidate
77current pixel ao. for each point, theoretically you don't have
78to compare the depth of the current pixel, but the depth of the
79samples taken for ao
80
81
82idea for incorporation of dynamic objects:
83
84store object id with render target
85for each object we know the trafo
86when doing the back projection =>
87
88as usual:
89we have the world space position of the current pixel
90find pixel from last frame using the old projection view trafo
91
92but now we first apply the inverse transformation that brought the
93last pixel to the current pixel and then the old projection view!!
94
95=> now we do the equality comparison as usual
96
97
98for reducing flickering:
99
100
101keep chain of kernels constant based on the state of convergence=>
102
103only use a single kernel, rotate based on noise texture
104we use fixed offset into the noise texture based on the #frames samples were accumulated
105
106problem:
107
108
109
110=========================
111
1121) ssao filter kernel: grows smaller too fast => flickering ... use
113adaptive number of samples instead of size?
1142) fix color bleeding
1153) fix ssao2 so that ssao contribution stays constant for both methods
1164) find physical expressions for constants in ssao
1175) retry normal discontinuity for ssao filter
1186) fix adaptive sampling for ssao and ssao2
119   a) sample adaptive if found invalid sample
120   b) sample adaptive if number of valid samples small?
121   
122   q: is it good to choose new weight as we do? (approx 4 frames)
123   or shouldn't we just completely reset sample?
124
125
126
127shading todo:
128
129bloom
130dof
131lense flar
132god rays
133sun disc
134environment lighting
135
1361) antialiasing very slow: try separable filter and one direction at a time
1372) try cross filter for ssao without tempcoh
1383) fix model directory => clean up structure (city/model => models ?)
1394) fix namespaces: one main namespace for core functions + math functions?
140   one util namespace
141
1425) clean up hacks:
143
144normalmapping
145render target flipflopping for tone mapping
146scenequery
147
148fix walk speed for deferred shading
149
150fix color bleeding
151fix ao2
152fix full resolution mode
153
154for the paper: make ao more efficient, for example we do not need to downsample normal texture for ao version 1
155also for full resolution mode: test what happens if we do not use downsampling, look why currently so slow with full resolution (was previously > 80 frame or so!!)
156
157
158///////////////
159
160always update tempcoh after changes to sample intensity usw.
161make halton sequence local to sampling method, no global static!!
162
163
164make better DOF
165
166clouds
167
168god rays
169
170animation
171
172
173################################
174## pompeii todo:
175
1761) improve performance:
177make better objects (jiri?)
178
1792) use better bvh code (also use size to handle floor plane)
180
1813) shading problems:
182
183create own normals:
184
185flat normals
186use crease angles
187
188find out about degenerate vertices
189
190find out about missing texcoords
191
192
193#####################################
194
195fix shadows
196
197find out ssao artifacts on edges (near edge no ambient occlusion)
198
199
200///////////
201
202shadows not working proberly with chc!!! (too many triangles, slow!!)
203
204sibenik: textures dissappear!!
205
206optimize!!
207full resolution, sky test (stencil??), shadows
208smaller textures??
209test normal ssao with simpler shader!
210
211fix normals!!
Note: See TracBrowser for help on using the repository browser.