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

Revision 3345, 5.4 KB checked in by mattausch, 16 years ago (diff)

trying to reduce render targets but something srange

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 fix ao2 fix full resolution mode
151
152for the paper: make ao more efficient, for example we do not need to
153downsample normal texture for ao version 1 also for full resolution
154mode: test what happens if we do not use downsampling, look why
155currently so slow with full resolution (was previously > 80 frame or
156so!!)
157
158
159///////////////
160
161
162always update tempcoh after changes to sample intensity usw.
163make halton sequence local to sampling method, no global static!!
164
165
166make better DOF
167
168clouds
169
170god rays
171
172animation
173
174
175################################
176## pompeii todo:
177
1781) improve performance:
179make better objects (jiri?)
180
1812) use better bvh code (also use size to handle floor plane)
182
1833) shading problems:
184
185create own normals:
186
187flat normals
188use crease angles
189
190find out about degenerate vertices
191
192find out about missing texcoords
193
194
195#####################################
196
197fix shadows
198
199find out ssao artifacts on edges (near edge no ambient occlusion)
200
201
202///////////
203
204shadows not working proberly with chc!!! (too many triangles, slow!!)
205
206sibenik: textures dissappear!!
207
208optimize!!
209full resolution, sky test (stencil??), shadows
210smaller textures??
211test normal ssao with simpler shader!
212
213fix normals!!
214
215
216ssao should be only for ambient lighting
217use better buddha model
218show rotating spheres
219images of sibenik
220performance test from vienna?
221try out method described in the paper for detecting pixels
222unifiy index and counter
223fix shadows!
224make images with / without filter
225use nicer buddha
226
227make samplingstrategy different: poisson has same status as halton,
228use one of both (parent class randomsampler)
Note: See TracBrowser for help on using the repository browser.