1 | <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
---|
2 | <!DOCTYPE RENDER_MONKEY [
|
---|
3 | <!ELEMENT RENDER_MONKEY
|
---|
4 | (
|
---|
5 | RmEffectWorkspace |
|
---|
6 | RmRegistryBranch |
|
---|
7 | RmClipboardNode
|
---|
8 | )?>
|
---|
9 |
|
---|
10 | <!ELEMENT RmEffectWorkspace
|
---|
11 | (
|
---|
12 | RmRegistryBranch?,
|
---|
13 | RmPlugInData?,
|
---|
14 | RmStringVariable*,
|
---|
15 | (
|
---|
16 | ( RmDirectXEffect, RmOpenGLEffect? ) |
|
---|
17 | ( RmOpenGLEffect, RmDirectXEffect? )
|
---|
18 | )?,
|
---|
19 | (
|
---|
20 | RmBooleanVariable |
|
---|
21 | RmIntegerVariable |
|
---|
22 | RmFloatVariable |
|
---|
23 | RmVectorVariable |
|
---|
24 | RmMatrixVariable |
|
---|
25 | RmDynamicVariable |
|
---|
26 | RmColorVariable |
|
---|
27 | Rm2DTextureVariable |
|
---|
28 | RmCubemapVariable |
|
---|
29 | Rm3DTextureVariable |
|
---|
30 | RmLightVariable |
|
---|
31 | RmMaterialVariable |
|
---|
32 | RmRenderableTexture |
|
---|
33 | RmStreamMap |
|
---|
34 | RmModelData |
|
---|
35 | RmEffectGroup
|
---|
36 | )*
|
---|
37 | )>
|
---|
38 |
|
---|
39 | <!ELEMENT RmEffectGroup
|
---|
40 | (
|
---|
41 | RmPlugInData?,
|
---|
42 | (
|
---|
43 | RmStringVariable |
|
---|
44 | RmDirectXEffect |
|
---|
45 | RmOpenGLEffect |
|
---|
46 | RmBooleanVariable |
|
---|
47 | RmIntegerVariable |
|
---|
48 | RmFloatVariable |
|
---|
49 | RmVectorVariable |
|
---|
50 | RmMatrixVariable |
|
---|
51 | RmDynamicVariable |
|
---|
52 | RmColorVariable |
|
---|
53 | Rm2DTextureVariable |
|
---|
54 | RmCubemapVariable |
|
---|
55 | Rm3DTextureVariable |
|
---|
56 | RmLightVariable |
|
---|
57 | RmMaterialVariable |
|
---|
58 | RmRenderableTexture |
|
---|
59 | RmStreamMap |
|
---|
60 | RmModelData
|
---|
61 | )*
|
---|
62 | )>
|
---|
63 |
|
---|
64 | <!ELEMENT RmDirectXEffect
|
---|
65 | (
|
---|
66 | RmPlugInData?,
|
---|
67 | (
|
---|
68 | RmStringVariable |
|
---|
69 | RmCamera |
|
---|
70 | RmBooleanVariable |
|
---|
71 | RmIntegerVariable |
|
---|
72 | RmFloatVariable |
|
---|
73 | RmVectorVariable |
|
---|
74 | RmMatrixVariable |
|
---|
75 | RmDynamicVariable |
|
---|
76 | RmColorVariable |
|
---|
77 | Rm2DTextureVariable |
|
---|
78 | RmCubemapVariable |
|
---|
79 | Rm3DTextureVariable |
|
---|
80 | RmLightVariable |
|
---|
81 | RmMaterialVariable |
|
---|
82 | RmRenderableTexture |
|
---|
83 | RmStreamMap |
|
---|
84 | RmModelData |
|
---|
85 | RmPass
|
---|
86 | )*
|
---|
87 | )>
|
---|
88 |
|
---|
89 | <!ELEMENT RmOpenGLEffect
|
---|
90 | (
|
---|
91 | RmPlugInData?,
|
---|
92 | (
|
---|
93 | RmStringVariable |
|
---|
94 | RmCamera |
|
---|
95 | RmBooleanVariable |
|
---|
96 | RmIntegerVariable |
|
---|
97 | RmFloatVariable |
|
---|
98 | RmVectorVariable |
|
---|
99 | RmMatrixVariable |
|
---|
100 | RmDynamicVariable |
|
---|
101 | RmColorVariable |
|
---|
102 | Rm2DTextureVariable |
|
---|
103 | RmCubemapVariable |
|
---|
104 | Rm3DTextureVariable |
|
---|
105 | RmLightVariable |
|
---|
106 | RmMaterialVariable |
|
---|
107 | RmRenderableTexture |
|
---|
108 | RmStreamMap |
|
---|
109 | RmModelData |
|
---|
110 | RmGLPass
|
---|
111 | )*
|
---|
112 | )>
|
---|
113 |
|
---|
114 | <!ELEMENT RmPass
|
---|
115 | (
|
---|
116 | RmPlugInData?,
|
---|
117 | RmStringVariable*,
|
---|
118 | RmCameraReference?,
|
---|
119 | RmModelReference?,
|
---|
120 | RmRenderStateBlock?,
|
---|
121 | (
|
---|
122 | (
|
---|
123 | ( RmHLSLShader | RmShader ),
|
---|
124 | ( RmShader | RmHLSLShader )?
|
---|
125 | )
|
---|
126 | )?,
|
---|
127 | RmRenderTarget*,
|
---|
128 | RmStreamMapReference?,
|
---|
129 | (
|
---|
130 | RmBooleanVariable |
|
---|
131 | RmIntegerVariable |
|
---|
132 | RmFloatVariable |
|
---|
133 | RmVectorVariable |
|
---|
134 | RmMatrixVariable |
|
---|
135 | RmDynamicVariable |
|
---|
136 | RmColorVariable |
|
---|
137 | Rm2DTextureVariable |
|
---|
138 | RmCubemapVariable |
|
---|
139 | Rm3DTextureVariable |
|
---|
140 | RmLightVariable |
|
---|
141 | RmMaterialVariable |
|
---|
142 | RmTextureObject |
|
---|
143 | RmLightObject |
|
---|
144 | RmMaterialObject
|
---|
145 | )*
|
---|
146 | )>
|
---|
147 |
|
---|
148 | <!ELEMENT RmGLPass
|
---|
149 | (
|
---|
150 | RmPlugInData?,
|
---|
151 | RmStringVariable*,
|
---|
152 | RmCameraReference?,
|
---|
153 | RmModelReference?,
|
---|
154 | RmRenderStateBlock?,
|
---|
155 | (
|
---|
156 | ( RmGLShader, RmGLShader? )
|
---|
157 | )?,
|
---|
158 | RmRenderTarget?,
|
---|
159 | RmStreamMapReference?,
|
---|
160 | (
|
---|
161 | RmBooleanVariable |
|
---|
162 | RmIntegerVariable |
|
---|
163 | RmFloatVariable |
|
---|
164 | RmVectorVariable |
|
---|
165 | RmMatrixVariable |
|
---|
166 | RmDynamicVariable |
|
---|
167 | RmColorVariable |
|
---|
168 | Rm2DTextureVariable |
|
---|
169 | RmCubemapVariable |
|
---|
170 | Rm3DTextureVariable |
|
---|
171 | RmLightVariable |
|
---|
172 | RmMaterialVariable |
|
---|
173 | RmTextureObject |
|
---|
174 | RmLightObject |
|
---|
175 | RmMaterialObject |
|
---|
176 | RmShaderConstant |
|
---|
177 | RmSampler
|
---|
178 | )*
|
---|
179 | )>
|
---|
180 |
|
---|
181 | <!ELEMENT RmShader
|
---|
182 | (
|
---|
183 | RmShaderCode,
|
---|
184 | RmPlugInData?,
|
---|
185 | (
|
---|
186 | RmStringVariable |
|
---|
187 | RmShaderConstant
|
---|
188 | )*
|
---|
189 | )>
|
---|
190 |
|
---|
191 | <!ELEMENT RmHLSLShader
|
---|
192 | (
|
---|
193 | RmShaderCode,
|
---|
194 | RmPlugInData?,
|
---|
195 | (
|
---|
196 | RmStringVariable |
|
---|
197 | RmShaderConstant |
|
---|
198 | RmSampler
|
---|
199 | )*
|
---|
200 | )>
|
---|
201 |
|
---|
202 | <!ELEMENT RmGLShader
|
---|
203 | (
|
---|
204 | RmShaderCode,
|
---|
205 | RmPlugInData?,
|
---|
206 | (
|
---|
207 | RmStringVariable
|
---|
208 | )*
|
---|
209 | )>
|
---|
210 |
|
---|
211 | <!ELEMENT RmTextureObject
|
---|
212 | (
|
---|
213 | RmPlugInData?,
|
---|
214 | RmStringVariable*,
|
---|
215 | RmTextureReference?,
|
---|
216 | RmState*
|
---|
217 | )>
|
---|
218 |
|
---|
219 | <!ELEMENT RmLightObject
|
---|
220 | (
|
---|
221 | RmPlugInData?,
|
---|
222 | RmStringVariable*,
|
---|
223 | RmLightReference?
|
---|
224 | )>
|
---|
225 |
|
---|
226 | <!ELEMENT RmMaterialObject
|
---|
227 | (
|
---|
228 | RmPlugInData?,
|
---|
229 | RmStringVariable*,
|
---|
230 | RmMaterialReference?
|
---|
231 | )>
|
---|
232 |
|
---|
233 | <!ELEMENT RmRenderStateBlock
|
---|
234 | (
|
---|
235 | RmPlugInData?,
|
---|
236 | (
|
---|
237 | RmStringVariable |
|
---|
238 | RmState
|
---|
239 | )*
|
---|
240 | )>
|
---|
241 |
|
---|
242 | <!ELEMENT RmStreamMap
|
---|
243 | (
|
---|
244 | RmPlugInData?,
|
---|
245 | (
|
---|
246 | RmStringVariable |
|
---|
247 | RmStream
|
---|
248 | )*
|
---|
249 | )>
|
---|
250 |
|
---|
251 | <!ELEMENT RmStream ( RmPlugInData?, RmStreamChannel* )>
|
---|
252 |
|
---|
253 | <!ELEMENT RmModelData ( RmPlugInData?, RmStringVariable* )>
|
---|
254 | <!ELEMENT RmTextureReference ( RmPlugInData?, RmStringVariable* )>
|
---|
255 | <!ELEMENT RmLightReference ( RmPlugInData?, RmStringVariable* )>
|
---|
256 | <!ELEMENT RmMaterialReference ( RmPlugInData?, RmStringVariable* )>
|
---|
257 | <!ELEMENT RmCameraReference ( RmPlugInData?, RmStringVariable* )>
|
---|
258 | <!ELEMENT RmModelReference ( RmPlugInData?, RmStringVariable* )>
|
---|
259 | <!ELEMENT RmStreamMapReference ( RmPlugInData?, RmStringVariable* )>
|
---|
260 | <!ELEMENT RmRenderableTexture ( RmPlugInData?, RmStringVariable* )>
|
---|
261 | <!ELEMENT RmRenderTarget ( RmPlugInData?, RmStringVariable* )>
|
---|
262 | <!ELEMENT RmBooleanVariable ( RmPlugInData?, RmStringVariable? )>
|
---|
263 | <!ELEMENT RmFloatVariable ( RmPlugInData?, RmStringVariable? )>
|
---|
264 | <!ELEMENT RmVectorVariable ( RmPlugInData?, RmStringVariable? )>
|
---|
265 | <!ELEMENT RmMatrixVariable ( RmPlugInData?, RmStringVariable? )>
|
---|
266 | <!ELEMENT RmColorVariable ( RmPlugInData?, RmStringVariable? )>
|
---|
267 | <!ELEMENT RmIntegerVariable ( RmPlugInData?, RmStringVariable? )>
|
---|
268 | <!ELEMENT Rm2DTextureVariable ( RmPlugInData?, RmStringVariable? )>
|
---|
269 | <!ELEMENT RmCubemapVariable ( RmPlugInData?, RmStringVariable? )>
|
---|
270 | <!ELEMENT Rm3DTextureVariable ( RmPlugInData?, RmStringVariable? )>
|
---|
271 | <!ELEMENT RmLightVariable ( RmPlugInData?, RmStringVariable? )>
|
---|
272 | <!ELEMENT RmMaterialVariable ( RmPlugInData?, RmStringVariable? )>
|
---|
273 | <!ELEMENT RmCamera ( RmPlugInData?, RmStringVariable* )>
|
---|
274 |
|
---|
275 | <!ELEMENT RmStringVariable ( RmTextDataBlock, RmPlugInData? )>
|
---|
276 |
|
---|
277 | <!ELEMENT RmDynamicVariable
|
---|
278 | (
|
---|
279 | RmPlugInData?,
|
---|
280 | RmStringVariable?,
|
---|
281 | RmDynamicVariableValueContainer
|
---|
282 | )>
|
---|
283 |
|
---|
284 | <!ELEMENT RmDynamicVariableValueContainer
|
---|
285 | (
|
---|
286 | RmPlugInData?,
|
---|
287 | RmDynamicVariableValue*
|
---|
288 | )>
|
---|
289 |
|
---|
290 | <!ELEMENT RmTextDataBlock ( #PCDATA ) >
|
---|
291 |
|
---|
292 | <!ELEMENT RmRegistryBranch
|
---|
293 | (
|
---|
294 | RmTextDataBlock?,
|
---|
295 | (
|
---|
296 | RmRegistryBranch |
|
---|
297 | RmStringVariable |
|
---|
298 | RmIntegerVariable |
|
---|
299 | RmBooleanVariable |
|
---|
300 | RmFloatVariable
|
---|
301 | )*
|
---|
302 | )>
|
---|
303 |
|
---|
304 | <!ELEMENT RmPlugInData
|
---|
305 | (
|
---|
306 | RmTextDataBlock?,
|
---|
307 | (
|
---|
308 | RmStringVariable |
|
---|
309 | RmIntegerVariable |
|
---|
310 | RmBooleanVariable |
|
---|
311 | RmFloatVariable |
|
---|
312 | RmVectorVariable
|
---|
313 | )*
|
---|
314 | )>
|
---|
315 |
|
---|
316 | <!ELEMENT RmClipboardNode
|
---|
317 | (
|
---|
318 | RmTextDataBlock?,
|
---|
319 | (
|
---|
320 | RmEffectWorkspace |
|
---|
321 | RmEffectGroup |
|
---|
322 | RmDirectXEffect |
|
---|
323 | RmOpenGLEffect |
|
---|
324 | RmPass |
|
---|
325 | RmGLPass |
|
---|
326 | RmShader |
|
---|
327 | RmHLSLShader |
|
---|
328 | RmGLShader |
|
---|
329 | RmShaderConstant |
|
---|
330 | RmSampler |
|
---|
331 | RmTextureObject |
|
---|
332 | RmLightObject |
|
---|
333 | RmMaterialObject |
|
---|
334 | RmRenderStateBlock |
|
---|
335 | RmState |
|
---|
336 | RmStreamMap |
|
---|
337 | RmStream |
|
---|
338 | RmStreamChannel |
|
---|
339 | RmModelData |
|
---|
340 | RmTextureReference |
|
---|
341 | RmLightReference |
|
---|
342 | RmMaterialReference |
|
---|
343 | RmModelReference |
|
---|
344 | RmStreamMapReference |
|
---|
345 | RmRenderableTexture |
|
---|
346 | RmRenderTarget |
|
---|
347 | RmBooleanVariable |
|
---|
348 | RmFloatVariable |
|
---|
349 | RmVectorVariable |
|
---|
350 | RmMatrixVariable |
|
---|
351 | RmDynamicVariable |
|
---|
352 | RmDynamicVariableValue |
|
---|
353 | RmColorVariable |
|
---|
354 | RmIntegerVariable |
|
---|
355 | RmStringVariable |
|
---|
356 | Rm2DTextureVariable |
|
---|
357 | RmCubemapVariable |
|
---|
358 | Rm3DTextureVariable |
|
---|
359 | RmLightVariable |
|
---|
360 | RmMaterialVariable |
|
---|
361 | RmRegistryBranch |
|
---|
362 | RmPlugInData |
|
---|
363 | RmCamera |
|
---|
364 | RmCameraReference
|
---|
365 | )*
|
---|
366 | )>
|
---|
367 |
|
---|
368 | <!ELEMENT RmStreamChannel ( RmPlugInData? ) >
|
---|
369 | <!ELEMENT RmShaderConstant ( RmPlugInData? ) >
|
---|
370 | <!ELEMENT RmSampler ( RmPlugInData? ) >
|
---|
371 | <!ELEMENT RmState ( RmPlugInData? ) >
|
---|
372 | <!ELEMENT RmDynamicVariableValue ( RmPlugInData? ) >
|
---|
373 |
|
---|
374 | <!ELEMENT RmShaderCode ( #PCDATA ) >
|
---|
375 |
|
---|
376 | <!ATTLIST RmEffectWorkspace
|
---|
377 | NAME CDATA #REQUIRED
|
---|
378 | API CDATA #REQUIRED
|
---|
379 | ACTIVE_EFFECT CDATA #REQUIRED
|
---|
380 | VALIDATION_STRING CDATA #REQUIRED
|
---|
381 | XML_VERSION CDATA #REQUIRED
|
---|
382 | >
|
---|
383 |
|
---|
384 | <!ATTLIST RmEffectGroup
|
---|
385 | NAME CDATA #REQUIRED
|
---|
386 | API CDATA #REQUIRED
|
---|
387 | >
|
---|
388 |
|
---|
389 | <!ATTLIST RmDirectXEffect
|
---|
390 | NAME CDATA #REQUIRED
|
---|
391 | API CDATA #REQUIRED
|
---|
392 | ACTIVE_CAMERA CDATA #REQUIRED
|
---|
393 | >
|
---|
394 |
|
---|
395 | <!ATTLIST RmOpenGLEffect
|
---|
396 | NAME CDATA #REQUIRED
|
---|
397 | API CDATA #REQUIRED
|
---|
398 | ACTIVE_CAMERA CDATA #REQUIRED
|
---|
399 | >
|
---|
400 |
|
---|
401 | <!ATTLIST RmPass
|
---|
402 | NAME CDATA #REQUIRED
|
---|
403 | API CDATA #REQUIRED
|
---|
404 | PASS_INDEX CDATA #REQUIRED
|
---|
405 | ENABLED ( TRUE | FALSE ) #REQUIRED
|
---|
406 | >
|
---|
407 |
|
---|
408 | <!ATTLIST RmGLPass
|
---|
409 | NAME CDATA #REQUIRED
|
---|
410 | API CDATA #REQUIRED
|
---|
411 | PASS_INDEX CDATA #REQUIRED
|
---|
412 | ENABLED ( TRUE | FALSE ) #REQUIRED
|
---|
413 | >
|
---|
414 |
|
---|
415 | <!ATTLIST RmShader
|
---|
416 | NAME CDATA #REQUIRED
|
---|
417 | API CDATA #REQUIRED
|
---|
418 | PIXEL_SHADER CDATA #REQUIRED
|
---|
419 | >
|
---|
420 |
|
---|
421 | <!ATTLIST RmHLSLShader
|
---|
422 | NAME CDATA #REQUIRED
|
---|
423 | API CDATA #REQUIRED
|
---|
424 | PIXEL_SHADER ( TRUE | FALSE ) #REQUIRED
|
---|
425 | TARGET CDATA #REQUIRED
|
---|
426 | ENTRY_POINT CDATA #REQUIRED
|
---|
427 | >
|
---|
428 |
|
---|
429 | <!ATTLIST RmGLShader
|
---|
430 | NAME CDATA #REQUIRED
|
---|
431 | API CDATA #REQUIRED
|
---|
432 | PIXEL_SHADER ( TRUE | FALSE ) #REQUIRED
|
---|
433 | >
|
---|
434 |
|
---|
435 | <!ATTLIST RmShaderConstant
|
---|
436 | NAME CDATA #REQUIRED
|
---|
437 | API CDATA #REQUIRED
|
---|
438 | REGISTER CDATA #REQUIRED
|
---|
439 | >
|
---|
440 |
|
---|
441 | <!ATTLIST RmSampler
|
---|
442 | NAME CDATA #REQUIRED
|
---|
443 | API CDATA #REQUIRED
|
---|
444 | REGISTER CDATA #REQUIRED
|
---|
445 | >
|
---|
446 |
|
---|
447 | <!ATTLIST RmTextureObject
|
---|
448 | NAME CDATA #REQUIRED
|
---|
449 | API CDATA #REQUIRED
|
---|
450 | STATE_INDEX CDATA #REQUIRED
|
---|
451 | VERTEX_TEXTURE ( TRUE | FALSE ) #REQUIRED
|
---|
452 | >
|
---|
453 |
|
---|
454 | <!ATTLIST RmLightObject
|
---|
455 | NAME CDATA #REQUIRED
|
---|
456 | API CDATA #REQUIRED
|
---|
457 | INDEX CDATA #REQUIRED
|
---|
458 | >
|
---|
459 |
|
---|
460 | <!ATTLIST RmMaterialObject
|
---|
461 | NAME CDATA #REQUIRED
|
---|
462 | API CDATA #REQUIRED
|
---|
463 | INDEX CDATA #REQUIRED
|
---|
464 | >
|
---|
465 |
|
---|
466 | <!ATTLIST RmRenderStateBlock
|
---|
467 | NAME CDATA #REQUIRED
|
---|
468 | API CDATA #REQUIRED
|
---|
469 | >
|
---|
470 |
|
---|
471 | <!ATTLIST RmState
|
---|
472 | NAME CDATA #REQUIRED
|
---|
473 | API CDATA #REQUIRED
|
---|
474 | STATE CDATA #REQUIRED
|
---|
475 | VALUE CDATA #REQUIRED
|
---|
476 | USAGE CDATA #REQUIRED
|
---|
477 | >
|
---|
478 |
|
---|
479 | <!ATTLIST RmStreamMap
|
---|
480 | NAME CDATA #REQUIRED
|
---|
481 | API CDATA #REQUIRED
|
---|
482 | >
|
---|
483 |
|
---|
484 | <!ATTLIST RmStream
|
---|
485 | NAME CDATA #REQUIRED
|
---|
486 | API CDATA #REQUIRED
|
---|
487 | STRIDE CDATA #REQUIRED
|
---|
488 | >
|
---|
489 |
|
---|
490 | <!ATTLIST RmStreamChannel
|
---|
491 | NAME CDATA #REQUIRED
|
---|
492 | API CDATA #REQUIRED
|
---|
493 | DATA_SIZE CDATA #REQUIRED
|
---|
494 | DATA_TYPE CDATA #REQUIRED
|
---|
495 | REGISTER CDATA #REQUIRED
|
---|
496 | USAGE CDATA #REQUIRED
|
---|
497 | USAGE_INDEX CDATA #REQUIRED
|
---|
498 | >
|
---|
499 |
|
---|
500 | <!ATTLIST RmModelData
|
---|
501 | NAME CDATA #REQUIRED
|
---|
502 | API CDATA #REQUIRED
|
---|
503 | FILE_NAME CDATA #REQUIRED
|
---|
504 | ORIENTATION CDATA #REQUIRED
|
---|
505 | >
|
---|
506 |
|
---|
507 | <!ATTLIST RmTextureReference
|
---|
508 | NAME CDATA #REQUIRED
|
---|
509 | API CDATA #REQUIRED
|
---|
510 | >
|
---|
511 |
|
---|
512 | <!ATTLIST RmLightReference
|
---|
513 | NAME CDATA #REQUIRED
|
---|
514 | API CDATA #REQUIRED
|
---|
515 | >
|
---|
516 |
|
---|
517 | <!ATTLIST RmMaterialReference
|
---|
518 | NAME CDATA #REQUIRED
|
---|
519 | API CDATA #REQUIRED
|
---|
520 | >
|
---|
521 |
|
---|
522 | <!ATTLIST RmModelReference
|
---|
523 | NAME CDATA #REQUIRED
|
---|
524 | API CDATA #REQUIRED
|
---|
525 | >
|
---|
526 |
|
---|
527 | <!ATTLIST RmStreamMapReference
|
---|
528 | NAME CDATA #REQUIRED
|
---|
529 | API CDATA #REQUIRED
|
---|
530 | >
|
---|
531 |
|
---|
532 | <!ATTLIST RmRenderableTexture
|
---|
533 | NAME CDATA #REQUIRED
|
---|
534 | API CDATA #REQUIRED
|
---|
535 | ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
|
---|
536 | VARIABLE_SEMANTIC CDATA #REQUIRED
|
---|
537 | FILE_NAME CDATA #REQUIRED
|
---|
538 | ORIGIN CDATA #REQUIRED
|
---|
539 | WIDTH CDATA #REQUIRED
|
---|
540 | HEIGHT CDATA #REQUIRED
|
---|
541 | FORMAT CDATA #REQUIRED
|
---|
542 | USE_VIEWPORT_DIMENSIONS ( TRUE | FALSE ) #REQUIRED
|
---|
543 | GENERATE_MIPMAPS ( TRUE | FALSE ) #REQUIRED
|
---|
544 | WIDTH_RATIO CDATA #REQUIRED
|
---|
545 | HEIGHT_RATIO CDATA #REQUIRED
|
---|
546 | >
|
---|
547 |
|
---|
548 | <!ATTLIST RmRenderTarget
|
---|
549 | NAME CDATA #REQUIRED
|
---|
550 | API CDATA #REQUIRED
|
---|
551 | INDEX CDATA #REQUIRED
|
---|
552 | RENDER_TO_SCREEN ( TRUE | FALSE ) #REQUIRED
|
---|
553 | COLOR_CLEAR ( TRUE | FALSE ) #REQUIRED
|
---|
554 | DEPTH_CLEAR ( TRUE | FALSE ) #REQUIRED
|
---|
555 | CLEAR_COLOR_VALUE CDATA #REQUIRED
|
---|
556 | DEPTH_CLEAR_VALUE CDATA #REQUIRED
|
---|
557 | >
|
---|
558 |
|
---|
559 | <!ATTLIST RmBooleanVariable
|
---|
560 | NAME CDATA #REQUIRED
|
---|
561 | API CDATA #REQUIRED
|
---|
562 | ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
|
---|
563 | VARIABLE_SEMANTIC CDATA #REQUIRED
|
---|
564 | VALUE CDATA #REQUIRED
|
---|
565 | >
|
---|
566 |
|
---|
567 | <!ATTLIST RmFloatVariable
|
---|
568 | NAME CDATA #REQUIRED
|
---|
569 | API CDATA #REQUIRED
|
---|
570 | ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
|
---|
571 | VARIABLE_SEMANTIC CDATA #REQUIRED
|
---|
572 | VALUE CDATA #REQUIRED
|
---|
573 | MIN CDATA #REQUIRED
|
---|
574 | MAX CDATA #REQUIRED
|
---|
575 | CLAMP ( TRUE | FALSE ) #REQUIRED
|
---|
576 | >
|
---|
577 |
|
---|
578 | <!ATTLIST RmVectorVariable
|
---|
579 | NAME CDATA #REQUIRED
|
---|
580 | API CDATA #REQUIRED
|
---|
581 | ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
|
---|
582 | VARIABLE_SEMANTIC CDATA #REQUIRED
|
---|
583 | VALUE_0 CDATA #REQUIRED
|
---|
584 | VALUE_1 CDATA #REQUIRED
|
---|
585 | VALUE_2 CDATA #REQUIRED
|
---|
586 | VALUE_3 CDATA #REQUIRED
|
---|
587 | MIN CDATA #REQUIRED
|
---|
588 | MAX CDATA #REQUIRED
|
---|
589 | CLAMP ( TRUE | FALSE ) #REQUIRED
|
---|
590 | NORMALIZE ( TRUE | FALSE ) #REQUIRED
|
---|
591 | >
|
---|
592 |
|
---|
593 | <!ATTLIST RmMatrixVariable
|
---|
594 | NAME CDATA #REQUIRED
|
---|
595 | API CDATA #REQUIRED
|
---|
596 | ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
|
---|
597 | VARIABLE_SEMANTIC CDATA #REQUIRED
|
---|
598 | VALUE_0 CDATA #REQUIRED
|
---|
599 | VALUE_1 CDATA #REQUIRED
|
---|
600 | VALUE_2 CDATA #REQUIRED
|
---|
601 | VALUE_3 CDATA #REQUIRED
|
---|
602 | VALUE_4 CDATA #REQUIRED
|
---|
603 | VALUE_5 CDATA #REQUIRED
|
---|
604 | VALUE_6 CDATA #REQUIRED
|
---|
605 | VALUE_7 CDATA #REQUIRED
|
---|
606 | VALUE_8 CDATA #REQUIRED
|
---|
607 | VALUE_9 CDATA #REQUIRED
|
---|
608 | VALUE_10 CDATA #REQUIRED
|
---|
609 | VALUE_11 CDATA #REQUIRED
|
---|
610 | VALUE_12 CDATA #REQUIRED
|
---|
611 | VALUE_13 CDATA #REQUIRED
|
---|
612 | VALUE_14 CDATA #REQUIRED
|
---|
613 | VALUE_15 CDATA #REQUIRED
|
---|
614 | >
|
---|
615 |
|
---|
616 | <!ATTLIST RmDynamicVariable
|
---|
617 | NAME CDATA #REQUIRED
|
---|
618 | API CDATA #REQUIRED
|
---|
619 | ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
|
---|
620 | VARIABLE_SEMANTIC CDATA #REQUIRED
|
---|
621 | VARIABLE_TYPE ( FLOAT | INTEGER | BOOLEAN ) #REQUIRED
|
---|
622 | ROWS CDATA #REQUIRED
|
---|
623 | COLUMNS CDATA #REQUIRED
|
---|
624 | FIXED_SIZE ( TRUE | FALSE ) #REQUIRED
|
---|
625 | MIN CDATA #REQUIRED
|
---|
626 | MAX CDATA #REQUIRED
|
---|
627 | CLAMP ( TRUE | FALSE ) #REQUIRED
|
---|
628 | NORMALIZE ( TRUE | FALSE ) #REQUIRED
|
---|
629 | >
|
---|
630 |
|
---|
631 | <!ATTLIST RmDynamicVariableValue
|
---|
632 | ROW_INDEX CDATA #REQUIRED
|
---|
633 | COLUMN_INDEX CDATA #REQUIRED
|
---|
634 | VALUE CDATA #REQUIRED
|
---|
635 | >
|
---|
636 |
|
---|
637 | <!ATTLIST RmColorVariable
|
---|
638 | NAME CDATA #REQUIRED
|
---|
639 | API CDATA #REQUIRED
|
---|
640 | ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
|
---|
641 | VARIABLE_SEMANTIC CDATA #REQUIRED
|
---|
642 | VALUE_0 CDATA #REQUIRED
|
---|
643 | VALUE_1 CDATA #REQUIRED
|
---|
644 | VALUE_2 CDATA #REQUIRED
|
---|
645 | VALUE_3 CDATA #REQUIRED
|
---|
646 | >
|
---|
647 |
|
---|
648 | <!ATTLIST RmIntegerVariable
|
---|
649 | NAME CDATA #REQUIRED
|
---|
650 | API CDATA #REQUIRED
|
---|
651 | ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
|
---|
652 | VARIABLE_SEMANTIC CDATA #REQUIRED
|
---|
653 | VALUE CDATA #REQUIRED
|
---|
654 | MIN CDATA #REQUIRED
|
---|
655 | MAX CDATA #REQUIRED
|
---|
656 | CLAMP ( TRUE | FALSE ) #REQUIRED
|
---|
657 | >
|
---|
658 |
|
---|
659 | <!ATTLIST RmStringVariable
|
---|
660 | NAME CDATA #REQUIRED
|
---|
661 | API CDATA #REQUIRED
|
---|
662 | ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
|
---|
663 | VARIABLE_SEMANTIC CDATA #REQUIRED
|
---|
664 | >
|
---|
665 |
|
---|
666 | <!ATTLIST Rm2DTextureVariable
|
---|
667 | NAME CDATA #REQUIRED
|
---|
668 | API CDATA #REQUIRED
|
---|
669 | ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
|
---|
670 | VARIABLE_SEMANTIC CDATA #REQUIRED
|
---|
671 | FILE_NAME CDATA #REQUIRED
|
---|
672 | ORIGIN CDATA #REQUIRED
|
---|
673 | >
|
---|
674 |
|
---|
675 | <!ATTLIST RmCubemapVariable
|
---|
676 | NAME CDATA #REQUIRED
|
---|
677 | API CDATA #REQUIRED
|
---|
678 | ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
|
---|
679 | VARIABLE_SEMANTIC CDATA #REQUIRED
|
---|
680 | FILE_NAME CDATA #REQUIRED
|
---|
681 | ORIGIN CDATA #REQUIRED
|
---|
682 | >
|
---|
683 |
|
---|
684 | <!ATTLIST Rm3DTextureVariable
|
---|
685 | NAME CDATA #REQUIRED
|
---|
686 | API CDATA #REQUIRED
|
---|
687 | ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
|
---|
688 | VARIABLE_SEMANTIC CDATA #REQUIRED
|
---|
689 | FILE_NAME CDATA #REQUIRED
|
---|
690 | ORIGIN CDATA #REQUIRED
|
---|
691 | >
|
---|
692 |
|
---|
693 | <!ATTLIST RmLightVariable
|
---|
694 | NAME CDATA #REQUIRED
|
---|
695 | API CDATA #REQUIRED
|
---|
696 | ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
|
---|
697 | VARIABLE_SEMANTIC CDATA #REQUIRED
|
---|
698 | LIGHT_ENABLED ( TRUE | FALSE ) #REQUIRED
|
---|
699 | LIGHT_TYPE ( POSITIONAL | DIRECTIONAL | SPOTLIGHT ) #REQUIRED
|
---|
700 | AMBIENT_0 CDATA #REQUIRED
|
---|
701 | AMBIENT_1 CDATA #REQUIRED
|
---|
702 | AMBIENT_2 CDATA #REQUIRED
|
---|
703 | AMBIENT_3 CDATA #REQUIRED
|
---|
704 | DIFFUSE_0 CDATA #REQUIRED
|
---|
705 | DIFFUSE_1 CDATA #REQUIRED
|
---|
706 | DIFFUSE_2 CDATA #REQUIRED
|
---|
707 | DIFFUSE_3 CDATA #REQUIRED
|
---|
708 | SPECULAR_0 CDATA #REQUIRED
|
---|
709 | SPECULAR_1 CDATA #REQUIRED
|
---|
710 | SPECULAR_2 CDATA #REQUIRED
|
---|
711 | SPECULAR_3 CDATA #REQUIRED
|
---|
712 | POSITION_0 CDATA #REQUIRED
|
---|
713 | POSITION_1 CDATA #REQUIRED
|
---|
714 | POSITION_2 CDATA #REQUIRED
|
---|
715 | DIRECTION_0 CDATA #REQUIRED
|
---|
716 | DIRECTION_1 CDATA #REQUIRED
|
---|
717 | DIRECTION_2 CDATA #REQUIRED
|
---|
718 | ATTENUATION_0 CDATA #REQUIRED
|
---|
719 | ATTENUATION_1 CDATA #REQUIRED
|
---|
720 | ATTENUATION_2 CDATA #REQUIRED
|
---|
721 | SPOTLIGHT_THETA CDATA #REQUIRED
|
---|
722 | SPOTLIGHT_PHI CDATA #REQUIRED
|
---|
723 | RANGE CDATA #REQUIRED
|
---|
724 | FALLOFF CDATA #REQUIRED
|
---|
725 | >
|
---|
726 |
|
---|
727 | <!ATTLIST RmMaterialVariable
|
---|
728 | NAME CDATA #REQUIRED
|
---|
729 | API CDATA #REQUIRED
|
---|
730 | ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
|
---|
731 | VARIABLE_SEMANTIC CDATA #REQUIRED
|
---|
732 | AMBIENT_0 CDATA #REQUIRED
|
---|
733 | AMBIENT_1 CDATA #REQUIRED
|
---|
734 | AMBIENT_2 CDATA #REQUIRED
|
---|
735 | AMBIENT_3 CDATA #REQUIRED
|
---|
736 | DIFFUSE_0 CDATA #REQUIRED
|
---|
737 | DIFFUSE_1 CDATA #REQUIRED
|
---|
738 | DIFFUSE_2 CDATA #REQUIRED
|
---|
739 | DIFFUSE_3 CDATA #REQUIRED
|
---|
740 | SPECULAR_0 CDATA #REQUIRED
|
---|
741 | SPECULAR_1 CDATA #REQUIRED
|
---|
742 | SPECULAR_2 CDATA #REQUIRED
|
---|
743 | SPECULAR_3 CDATA #REQUIRED
|
---|
744 | EMISSIVE_0 CDATA #REQUIRED
|
---|
745 | EMISSIVE_1 CDATA #REQUIRED
|
---|
746 | EMISSIVE_2 CDATA #REQUIRED
|
---|
747 | EMISSIVE_3 CDATA #REQUIRED
|
---|
748 | SPECULAR_POWER CDATA #REQUIRED
|
---|
749 | >
|
---|
750 |
|
---|
751 | <!ATTLIST RmRegistryBranch
|
---|
752 | NAME CDATA #REQUIRED
|
---|
753 | API CDATA #REQUIRED
|
---|
754 | XML_VERSION CDATA #REQUIRED
|
---|
755 | >
|
---|
756 |
|
---|
757 | <!ATTLIST RmPlugInData
|
---|
758 | NAME CDATA #REQUIRED
|
---|
759 | API CDATA #REQUIRED
|
---|
760 | PLUGIN_GUID CDATA #REQUIRED
|
---|
761 | >
|
---|
762 |
|
---|
763 | <!ATTLIST RmClipboardNode
|
---|
764 | NAME CDATA #REQUIRED
|
---|
765 | API CDATA #REQUIRED
|
---|
766 | XML_VERSION CDATA #REQUIRED
|
---|
767 | >
|
---|
768 |
|
---|
769 | <!ATTLIST RmCamera
|
---|
770 | NAME CDATA #REQUIRED
|
---|
771 | API CDATA #REQUIRED
|
---|
772 | CAMERA_POSITION_X CDATA #REQUIRED
|
---|
773 | CAMERA_POSITION_Y CDATA #REQUIRED
|
---|
774 | CAMERA_POSITION_Z CDATA #REQUIRED
|
---|
775 | LOOK_AT_VECTOR_X CDATA #REQUIRED
|
---|
776 | LOOK_AT_VECTOR_Y CDATA #REQUIRED
|
---|
777 | LOOK_AT_VECTOR_Z CDATA #REQUIRED
|
---|
778 | UP_VECTOR_X CDATA #REQUIRED
|
---|
779 | UP_VECTOR_Y CDATA #REQUIRED
|
---|
780 | UP_VECTOR_Z CDATA #REQUIRED
|
---|
781 | FOV CDATA #REQUIRED
|
---|
782 | NEAR_CLIP_PLANE CDATA #REQUIRED
|
---|
783 | FAR_CLIP_PLANE CDATA #REQUIRED
|
---|
784 | >
|
---|
785 |
|
---|
786 | <!ATTLIST RmCameraReference
|
---|
787 | NAME CDATA #REQUIRED
|
---|
788 | API CDATA #REQUIRED
|
---|
789 | USE_ACTIVE_CAMERA ( TRUE | FALSE ) #REQUIRED
|
---|
790 | >
|
---|
791 |
|
---|
792 | <!ATTLIST RmShaderCode
|
---|
793 | TYPE ( TEXT ) #REQUIRED
|
---|
794 | >
|
---|
795 |
|
---|
796 | <!ATTLIST RmTextDataBlock
|
---|
797 | TYPE ( TEXT ) #REQUIRED
|
---|
798 | >
|
---|
799 |
|
---|
800 | ]>
|
---|
801 | <RENDER_MONKEY>
|
---|
802 | <RmEffectWorkspace NAME="Effect Workspace" API="" ACTIVE_EFFECT="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect" VALIDATION_STRING="" XML_VERSION="RenderMonkey 1.6">
|
---|
803 | <RmRegistryBranch NAME="RM_REGISTRY" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
804 | <RmRegistryBranch NAME="RM_LOCAL" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
805 | <RmRegistryBranch NAME="WORKSPACE" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
806 | <RmStringVariable NAME="LAST_SAVE" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[
|
---|
807 | 12/5/2006 9:53:25]]></RmTextDataBlock></RmStringVariable>
|
---|
808 | <RmStringVariable NAME="VERSION" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[
|
---|
809 | RenderMonkey Version 1.6 (build 91)]]></RmTextDataBlock></RmStringVariable>
|
---|
810 | <RmStringVariable NAME="XML_VERSION" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[
|
---|
811 | RenderMonkey 1.6]]></RmTextDataBlock></RmStringVariable>
|
---|
812 | <RmStringVariable NAME="BASE_WORKSPACE_PATH" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[
|
---|
813 | L:\isma\svn2\GTP\trunk\App\Demos\Illum\IBRBillboardCloudTrees\RenderMonkey\IndirectTexturingShadowsEffect\]]></RmTextDataBlock></RmStringVariable>
|
---|
814 | </RmRegistryBranch>
|
---|
815 | <RmRegistryBranch NAME="RM_PLUGIN" API="" XML_VERSION="RenderMonkey 1.6"><RmTextDataBlock TYPE="TEXT"><![CDATA[
|
---|
816 | <DockingPaneLayouts><Application_Layout><Pane-1><Type>0</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Title>sqrtNumSamples</Title><ID>1100</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>11</DockingHolder><FloatingHolder>23</FloatingHolder><LastHolder>23</LastHolder></Pane-1><Pane-2><Type>2</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><Horiz>1</Horiz><Pane-1>3</Pane-1><Pane-2>4</Pane-2><Pane-3>5</Pane-3><Pane-4>6</Pane-4><Pane-5>7</Pane-5><Pane-6>8</Pane-6><Pane-7>9</Pane-7><Pane-8>10</Pane-8><Pane-9>11</Pane-9><Pane-10>12</Pane-10><Panes>10</Panes></Pane-2><Pane-3><Type>1</Type><DockingCX>427</DockingCX><DockingCY>100</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-3><Pane-4><Type>1</Type><DockingCX>374</DockingCX><DockingCY>182</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-4><Pane-5><Type>1</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-5><Pane-6><Type>1</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-6><Pane-7><Type>1</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-7><Pane-8><Type>1</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-8><Pane-9><Type>1</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-9><Pane-10><Type>1</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-10><Pane-11><Type>1</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-11><Pane-12><Type>2</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><Horiz>0</Horiz><Pane-1>13</Pane-1><Pane-2>19</Pane-2><Panes>2</Panes></Pane-12><Pane-13><Type>2</Type><DockingCX>0</DockingCX><DockingCY>720</DockingCY><Horiz>1</Horiz><Pane-1>14</Pane-1><Pane-2>16</Pane-2><Pane-3>17</Pane-3><Panes>3</Panes></Pane-13><Pane-14><Type>1</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Selected>15</Selected><Panes>1</Panes><Pane-1>15</Pane-1></Pane-14><Pane-15><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Workspace</Title><ID>1000</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>14</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>14</LastHolder></Pane-15><Pane-16><Type>4</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY></Pane-16><Pane-17><Type>1</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Selected>18</Selected><Panes>1</Panes><Pane-1>18</Pane-1></Pane-17><Pane-18><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Artist Editor</Title><ID>1001</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>17</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>17</LastHolder></Pane-18><Pane-19><Type>1</Type><DockingCX>250</DockingCX><DockingCY>344</DockingCY><Selected>20</Selected><Panes>1</Panes><Pane-1>20</Pane-1></Pane-19><Pane-20><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Output</Title><ID>1002</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>19</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>19</LastHolder></Pane-20><Pane-21><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>22</TopContaner><WindowRectTopPos>26</WindowRectTopPos><WindowRectBottomPos>132</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>427</WindowRectRightPos></Pane-21><Pane-22><Type>2</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Horiz>1</Horiz><Pane-1>23</Pane-1><Panes>1</Panes></Pane-22><Pane-23><Type>1</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-23><Pane-24><Type>0</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Title>sourceTextureSize</Title><ID>1101</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>10</DockingHolder><FloatingHolder>27</FloatingHolder><LastHolder>27</LastHolder></Pane-24><Pane-25><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>26</TopContaner><WindowRectTopPos>26</WindowRectTopPos><WindowRectBottomPos>132</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>427</WindowRectRightPos></Pane-25><Pane-26><Type>2</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Horiz>1</Horiz><Pane-1>27</Pane-1><Panes>1</Panes></Pane-26><Pane-27><Type>1</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-27><Pane-28><Type>0</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Title>distanceScale</Title><ID>1102</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>9</DockingHolder><FloatingHolder>31</FloatingHolder><LastHolder>31</LastHolder></Pane-28><Pane-29><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>30</TopContaner><WindowRectTopPos>26</WindowRectTopPos><WindowRectBottomPos>132</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>427</WindowRectRightPos></Pane-29><Pane-30><Type>2</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Horiz>1</Horiz><Pane-1>31</Pane-1><Panes>1</Panes></Pane-30><Pane-31><Type>1</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-31><Pane-32><Type>0</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Title>Ka</Title><ID>1103</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>8</DockingHolder><FloatingHolder>35</FloatingHolder><LastHolder>35</LastHolder></Pane-32><Pane-33><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>34</TopContaner><WindowRectTopPos>26</WindowRectTopPos><WindowRectBottomPos>132</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>427</WindowRectRightPos></Pane-33><Pane-34><Type>2</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Horiz>1</Horiz><Pane-1>35</Pane-1><Panes>1</Panes></Pane-34><Pane-35><Type>1</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-35><Pane-36><Type>0</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Title>Kd</Title><ID>1104</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>7</DockingHolder><FloatingHolder>39</FloatingHolder><LastHolder>39</LastHolder></Pane-36><Pane-37><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>38</TopContaner><WindowRectTopPos>26</WindowRectTopPos><WindowRectBottomPos>132</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>427</WindowRectRightPos></Pane-37><Pane-38><Type>2</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Horiz>1</Horiz><Pane-1>39</Pane-1><Panes>1</Panes></Pane-38><Pane-39><Type>1</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-39><Pane-40><Type>0</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Title>epsilonX</Title><ID>1105</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>6</DockingHolder><FloatingHolder>43</FloatingHolder><LastHolder>43</LastHolder></Pane-40><Pane-41><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>42</TopContaner><WindowRectTopPos>26</WindowRectTopPos><WindowRectBottomPos>132</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>427</WindowRectRightPos></Pane-41><Pane-42><Type>2</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Horiz>1</Horiz><Pane-1>43</Pane-1><Panes>1</Panes></Pane-42><Pane-43><Type>1</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-43><Pane-44><Type>0</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Title>epsilonY</Title><ID>1106</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>5</DockingHolder><FloatingHolder>47</FloatingHolder><LastHolder>47</LastHolder></Pane-44><Pane-45><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>46</TopContaner><WindowRectTopPos>26</WindowRectTopPos><WindowRectBottomPos>132</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>427</WindowRectRightPos></Pane-45><Pane-46><Type>2</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Horiz>1</Horiz><Pane-1>47</Pane-1><Panes>1</Panes></Pane-46><Pane-47><Type>1</Type><DockingCX>427</DockingCX><DockingCY>106</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-47><Pane-48><Type>0</Type><DockingCX>374</DockingCX><DockingCY>182</DockingCY><Title>lightPos</Title><ID>1107</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>4</DockingHolder><FloatingHolder>51</FloatingHolder><LastHolder>51</LastHolder></Pane-48><Pane-49><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>50</TopContaner><WindowRectTopPos>20</WindowRectTopPos><WindowRectBottomPos>202</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>374</WindowRectRightPos></Pane-49><Pane-50><Type>2</Type><DockingCX>374</DockingCX><DockingCY>182</DockingCY><Horiz>1</Horiz><Pane-1>51</Pane-1><Panes>1</Panes></Pane-50><Pane-51><Type>1</Type><DockingCX>374</DockingCX><DockingCY>182</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-51><Pane-52><Type>0</Type><DockingCX>427</DockingCX><DockingCY>100</DockingCY><Title>lightPosY</Title><ID>1108</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>3</DockingHolder><FloatingHolder>55</FloatingHolder><LastHolder>55</LastHolder></Pane-52><Pane-53><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>54</TopContaner><WindowRectTopPos>20</WindowRectTopPos><WindowRectBottomPos>120</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>427</WindowRectRightPos></Pane-53><Pane-54><Type>2</Type><DockingCX>427</DockingCX><DockingCY>100</DockingCY><Horiz>1</Horiz><Pane-1>55</Pane-1><Panes>1</Panes></Pane-54><Pane-55><Type>1</Type><DockingCX>427</DockingCX><DockingCY>100</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-55><Summary><TopContainer>2</TopContainer><Client>16</Client><Panes>55</Panes></Summary></Application_Layout></DockingPaneLayouts>
|
---|
817 | ]]></RmTextDataBlock>
|
---|
818 | <RmRegistryBranch NAME="RmRenderTargetEditor" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
819 | <RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.6"/>
|
---|
820 | <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.6"/>
|
---|
821 | </RmRegistryBranch>
|
---|
822 | <RmRegistryBranch NAME="RmPreviewDx9Window" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
823 | <RmRegistryBranch NAME="EffectPlacementRepository" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
824 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
825 | <RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
826 | <RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
827 | <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="423" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
828 | <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="350" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
829 | <RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="3" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
830 | <RmIntegerVariable NAME="Visible" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
831 | <RmIntegerVariable NAME="Minimized X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
832 | <RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
833 | </RmRegistryBranch>
|
---|
834 | </RmRegistryBranch>
|
---|
835 | </RmRegistryBranch>
|
---|
836 | <RmRegistryBranch NAME="RmShaderEditor" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
837 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
838 | <RmRegistryBranch NAME="Disassembly" API="" XML_VERSION="RenderMonkey 1.6"/>
|
---|
839 | <RmStringVariable NAME="Editing Shader" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[
|
---|
840 | Pixel Shader]]></RmTextDataBlock></RmStringVariable>
|
---|
841 | <RmStringVariable NAME="Editing Pass" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[
|
---|
842 | LeavesIndirectTexturingPass]]></RmTextDataBlock></RmStringVariable>
|
---|
843 | <RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="58" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
844 | <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="696" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
845 | <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="255" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
846 | <RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
847 | <RmIntegerVariable NAME="Visible" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
848 | <RmIntegerVariable NAME="Minimized X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
849 | <RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
850 | <RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="44" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
851 | </RmRegistryBranch>
|
---|
852 | </RmRegistryBranch>
|
---|
853 | <RmRegistryBranch NAME="RmPreviewGLPreview" API="" XML_VERSION="RenderMonkey 1.6"/>
|
---|
854 | <RmRegistryBranch NAME="RmTextureGenerator" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
855 | <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.6"/>
|
---|
856 | </RmRegistryBranch>
|
---|
857 | <RmRegistryBranch NAME="NoteEditor" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
858 | <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.6"/>
|
---|
859 | </RmRegistryBranch>
|
---|
860 | <RmRegistryBranch NAME="RmRenderStateBlockEditor" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
861 | <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
862 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect.LeavesIndirectTexturingPass.Render State" API="" XML_VERSION="RenderMonkey 1.6"/>
|
---|
863 | </RmRegistryBranch>
|
---|
864 | <RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
865 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
866 | <RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
867 | <RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
868 | <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="696" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
869 | <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="255" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
870 | <RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
871 | <RmIntegerVariable NAME="Visible" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
872 | <RmIntegerVariable NAME="Minimized X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
873 | <RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
874 | </RmRegistryBranch>
|
---|
875 | </RmRegistryBranch>
|
---|
876 | </RmRegistryBranch>
|
---|
877 | <RmRegistryBranch NAME="RmTextureObjectEditor" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
878 | <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
879 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect.LeavesIndirectTexturingPass.sourceTexture" API="" XML_VERSION="RenderMonkey 1.6"/>
|
---|
880 | </RmRegistryBranch>
|
---|
881 | <RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
882 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
883 | <RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="66" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
884 | <RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="87" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
885 | <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="696" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
886 | <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="255" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
887 | <RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
888 | <RmIntegerVariable NAME="Visible" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
889 | <RmIntegerVariable NAME="Minimized X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
890 | <RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
891 | </RmRegistryBranch>
|
---|
892 | </RmRegistryBranch>
|
---|
893 | </RmRegistryBranch>
|
---|
894 | <RmRegistryBranch NAME="RmRenderableTextureEditor" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
895 | <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.6"/>
|
---|
896 | <RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
897 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect.ShadowMap" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
898 | <RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
899 | <RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="116" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
900 | <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="210" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
901 | <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="354" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
902 | <RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
903 | <RmIntegerVariable NAME="Visible" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
904 | <RmIntegerVariable NAME="Minimized X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
905 | <RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
906 | </RmRegistryBranch>
|
---|
907 | </RmRegistryBranch>
|
---|
908 | </RmRegistryBranch>
|
---|
909 | <RmRegistryBranch NAME="RmScalarEditor" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
910 | <RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
911 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect.sqrtNumSamples" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
912 | <RmIntegerVariable NAME="DockPaneID" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1100" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
913 | </RmRegistryBranch>
|
---|
914 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect.sourceTextureSize" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
915 | <RmIntegerVariable NAME="DockPaneID" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1101" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
916 | </RmRegistryBranch>
|
---|
917 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect.distanceScale" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
918 | <RmIntegerVariable NAME="DockPaneID" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1102" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
919 | </RmRegistryBranch>
|
---|
920 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect.Ka" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
921 | <RmIntegerVariable NAME="DockPaneID" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1103" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
922 | </RmRegistryBranch>
|
---|
923 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect.Kd" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
924 | <RmIntegerVariable NAME="DockPaneID" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1104" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
925 | </RmRegistryBranch>
|
---|
926 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect.epsilonX" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
927 | <RmIntegerVariable NAME="DockPaneID" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1105" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
928 | </RmRegistryBranch>
|
---|
929 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect.epsilonY" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
930 | <RmIntegerVariable NAME="DockPaneID" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1106" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
931 | </RmRegistryBranch>
|
---|
932 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect.lightPosY" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
933 | <RmIntegerVariable NAME="DockPaneID" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1108" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
934 | </RmRegistryBranch>
|
---|
935 | </RmRegistryBranch>
|
---|
936 | </RmRegistryBranch>
|
---|
937 | <RmRegistryBranch NAME="RmStreamEditor" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
938 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.Stream Mapping IndirectTexturing" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
939 | <RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
940 | <RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="116" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
941 | <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="554" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
942 | <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="254" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
943 | <RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
944 | <RmIntegerVariable NAME="Visible" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
945 | <RmIntegerVariable NAME="Minimized X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
946 | <RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
947 | </RmRegistryBranch>
|
---|
948 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.PN Stream Mapping" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
949 | <RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
950 | <RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="116" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
951 | <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="554" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
952 | <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="228" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
953 | <RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
954 | <RmIntegerVariable NAME="Visible" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
955 | <RmIntegerVariable NAME="Minimized X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
956 | <RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
957 | </RmRegistryBranch>
|
---|
958 | </RmRegistryBranch>
|
---|
959 | <RmRegistryBranch NAME="RmVectorEditor" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
960 | <RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
961 | <RmRegistryBranch NAME="Effect Workspace.Shadow Effects.IndirectTexturingShadowsEffect.lightPos" API="" XML_VERSION="RenderMonkey 1.6">
|
---|
962 | <RmIntegerVariable NAME="DockPaneID" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1107" MIN="-10" MAX="10" CLAMP="FALSE"/>
|
---|
963 | </RmRegistryBranch>
|
---|
964 | </RmRegistryBranch>
|
---|
965 | </RmRegistryBranch>
|
---|
966 | </RmRegistryBranch>
|
---|
967 | </RmRegistryBranch>
|
---|
968 | </RmRegistryBranch>
|
---|
969 | <RmStringVariable NAME="Header" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[
|
---|
970 | $File: //depot/3darg/Tools/RenderMonkey/Examples/DX9/Shadows.rfx $
|
---|
971 | $Revision: #14 $
|
---|
972 |
|
---|
973 | © ATI Technologies, 2003]]></RmTextDataBlock></RmStringVariable>
|
---|
974 | <RmEffectGroup NAME="Shadow Effects" API="">
|
---|
975 | <RmDirectXEffect NAME="IndirectTexturingShadowsEffect" API="D3D" ACTIVE_CAMERA="">
|
---|
976 | <RmFloatVariable NAME="backProjectionCut" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE="78.000000" MIN="0.000000" MAX="200.000000" CLAMP="FALSE"/>
|
---|
977 | <RmFloatVariable NAME="shadowBias" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE="0.004000" MIN="0.000000" MAX="0.010000" CLAMP="FALSE"/>
|
---|
978 | <RmFloatVariable NAME="distanceScale" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE="0.001480" MIN="0.000000" MAX="0.004000" CLAMP="FALSE"/>
|
---|
979 | <RmFloatVariable NAME="Ks" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE="0.620000" MIN="0.000000" MAX="1.000000" CLAMP="FALSE"/>
|
---|
980 | <RmFloatVariable NAME="Kd" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE="1.000000" MIN="0.000000" MAX="1.000000" CLAMP="TRUE"/>
|
---|
981 | <RmFloatVariable NAME="Ka" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE="0.390000" MIN="0.000000" MAX="1.000000" CLAMP="FALSE"/>
|
---|
982 | <RmVectorVariable NAME="lightPos" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE_0="4.000000" VALUE_1="71.999992" VALUE_2="99.999992" VALUE_3="1.000000" MIN="-100.000000" MAX="100.000000" CLAMP="FALSE" NORMALIZE="FALSE"/>
|
---|
983 | <RmFloatVariable NAME="epsilonX" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE="-0.070000" MIN="-1.000000" MAX="1.000000" CLAMP="FALSE"/>
|
---|
984 | <RmFloatVariable NAME="epsilonY" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE="-0.020000" MIN="-1.000000" MAX="1.000000" CLAMP="FALSE"/>
|
---|
985 | <RmFloatVariable NAME="sqrtNumSamples" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE="4.000000" MIN="-1.000000" MAX="1.000000" CLAMP="FALSE"/>
|
---|
986 | <RmFloatVariable NAME="sourceTextureSize" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE="16.000000" MIN="-1.000000" MAX="1.000000" CLAMP="FALSE"/>
|
---|
987 | <RmFloatVariable NAME="nearClipPlane" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="NearClipPlane" VALUE="0.000000" MIN="-1.000000" MAX="1.000000" CLAMP="FALSE"/>
|
---|
988 | <RmFloatVariable NAME="lightPosY" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-100.000000" MIN="-1.000000" MAX="1.000000" CLAMP="FALSE"/>
|
---|
989 | <RmColorVariable NAME="platformColor" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE_0="1.000000" VALUE_1="0.679020" VALUE_2="0.300413" VALUE_3="1.000000"/>
|
---|
990 | <Rm2DTextureVariable NAME="sourceTexture" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" FILE_NAME="chestnutRotatedLeafAtlasDefault.png" ORIGIN="0"/>
|
---|
991 | <Rm2DTextureVariable NAME="trunkTexture" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" FILE_NAME="castanea_sativa_bark.png" ORIGIN="0"/>
|
---|
992 | <Rm2DTextureVariable NAME="SpotLight" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" FILE_NAME="spotlight.png" ORIGIN="0"/>
|
---|
993 | <Rm2DTextureVariable NAME="indirectTexture" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" FILE_NAME="chestnutIndirectBillboardGroupAtlas0.png" ORIGIN="0"/>
|
---|
994 | <RmRenderableTexture NAME="ShadowMap" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" FILE_NAME="" ORIGIN="0" WIDTH="1404" HEIGHT="690" FORMAT="21" USE_VIEWPORT_DIMENSIONS="TRUE" GENERATE_MIPMAPS="FALSE" WIDTH_RATIO="1.000000" HEIGHT_RATIO="1.000000"/>
|
---|
995 | <RmPass NAME="DepthTrunkPass" API="D3D" PASS_INDEX="0" ENABLED="TRUE">
|
---|
996 | <RmModelReference NAME="trunk" API=""/>
|
---|
997 | <RmHLSLShader NAME="Vertex Shader" API="D3D" PIXEL_SHADER="FALSE" TARGET="vs_1_1" ENTRY_POINT="main"><RmShaderCode TYPE="TEXT"><![CDATA[
|
---|
998 | float4x4 view_proj_matrix: register(c0);
|
---|
999 | float4 lightPos: register(c4);
|
---|
1000 | float distanceScale: register(c5);
|
---|
1001 | float4x4 proj_matrix: register(c6);
|
---|
1002 | float time_0_X: register(c10);
|
---|
1003 | float lightPosY;
|
---|
1004 |
|
---|
1005 | struct VS_OUTPUT {
|
---|
1006 | float4 Pos: POSITION;
|
---|
1007 | float3 lightVec: TEXCOORD0;
|
---|
1008 | };
|
---|
1009 |
|
---|
1010 | VS_OUTPUT main(float4 Pos: POSITION){
|
---|
1011 | VS_OUTPUT Out;
|
---|
1012 |
|
---|
1013 | // Animate the light position.
|
---|
1014 | // Comment out this code to use a static light.
|
---|
1015 | // In real applications this work is better done on
|
---|
1016 | // the CPU as it's constant for the whole scene.
|
---|
1017 | float3 lightPos;
|
---|
1018 | lightPos.x = cos(1.321 * time_0_X);
|
---|
1019 | lightPos.z = sin(0.923 * time_0_X);
|
---|
1020 | lightPos.xz = 100 * normalize(lightPos.xz);
|
---|
1021 | lightPos.y = lightPosY;
|
---|
1022 |
|
---|
1023 | // Create view vectors for the light, looking at (0,0,0)
|
---|
1024 | // In real applications this work is better done on
|
---|
1025 | // the CPU as it's constant for the whole scene.
|
---|
1026 | float3 dirZ = -normalize(lightPos);
|
---|
1027 | float3 up = float3(0,0,1);
|
---|
1028 | float3 dirX = cross(up, dirZ);
|
---|
1029 | float3 dirY = cross(dirZ, dirX);
|
---|
1030 |
|
---|
1031 | // Transform into light's view space.
|
---|
1032 | // In real applications we would be better off using a 4x4
|
---|
1033 | // matrix instead, but for this shader it's cheaper to
|
---|
1034 | // just transpose and rotate into light's view space.
|
---|
1035 | float4 pos;
|
---|
1036 | Pos.xyz -= lightPos;
|
---|
1037 | pos.x = dot(dirX, Pos);
|
---|
1038 | pos.y = dot(dirY, Pos);
|
---|
1039 | pos.z = dot(dirZ, Pos);
|
---|
1040 | pos.w = 1;
|
---|
1041 |
|
---|
1042 | // Project it. For this sample using the normal projection
|
---|
1043 | // matrix suffices, however, real applications will typically
|
---|
1044 | // use a separate projection matrix for each light depending
|
---|
1045 | // on its properties such as FOV and range.
|
---|
1046 | Out.Pos = mul(proj_matrix, pos);
|
---|
1047 | Out.lightVec = distanceScale * Pos;
|
---|
1048 |
|
---|
1049 | return Out;
|
---|
1050 | }
|
---|
1051 |
|
---|
1052 |
|
---|
1053 | ]]></RmShaderCode>
|
---|
1054 | <RmShaderConstant NAME="distanceScale" API="" REGISTER="5"/>
|
---|
1055 | <RmShaderConstant NAME="lightPosY" API="" REGISTER="11"/>
|
---|
1056 | <RmShaderConstant NAME="proj_matrix" API="" REGISTER="6"/>
|
---|
1057 | <RmShaderConstant NAME="time_0_X" API="" REGISTER="10"/>
|
---|
1058 | </RmHLSLShader>
|
---|
1059 | <RmHLSLShader NAME="Pixel Shader" API="D3D" PIXEL_SHADER="TRUE" TARGET="ps_2_0" ENTRY_POINT="main"><RmShaderCode TYPE="TEXT"><![CDATA[
|
---|
1060 | float4 main(float3 lightVec: TEXCOORD0) : COLOR {
|
---|
1061 | // Output radial distance
|
---|
1062 | return length(lightVec);
|
---|
1063 | }
|
---|
1064 |
|
---|
1065 | ]]></RmShaderCode></RmHLSLShader>
|
---|
1066 | <RmRenderTarget NAME="ShadowMap" API="" INDEX="0" RENDER_TO_SCREEN="FALSE" COLOR_CLEAR="TRUE" DEPTH_CLEAR="TRUE" CLEAR_COLOR_VALUE="16777215" DEPTH_CLEAR_VALUE="1.000000"/>
|
---|
1067 | <RmStreamMapReference NAME="PN Stream Mapping" API=""/>
|
---|
1068 | </RmPass>
|
---|
1069 | <RmPass NAME="DepthLeavesIndirectTexturingPass" API="D3D" PASS_INDEX="1" ENABLED="TRUE">
|
---|
1070 | <RmModelReference NAME="leavesBillboardCloud" API=""/>
|
---|
1071 | <RmRenderStateBlock NAME="Render State" API="D3D">
|
---|
1072 | <RmState NAME="D3DRS_ALPHAFUNC" API="D3D" STATE="25" VALUE="7" USAGE="RENDER_STATE"/>
|
---|
1073 | <RmState NAME="D3DRS_ALPHAREF" API="D3D" STATE="24" VALUE="272" USAGE="RENDER_STATE"/>
|
---|
1074 | <RmState NAME="D3DRS_ALPHATESTENABLE" API="D3D" STATE="15" VALUE="1" USAGE="RENDER_STATE"/>
|
---|
1075 | <RmState NAME="D3DRS_CULLMODE" API="D3D" STATE="22" VALUE="1" USAGE="RENDER_STATE"/>
|
---|
1076 | </RmRenderStateBlock>
|
---|
1077 | <RmHLSLShader NAME="Pixel Shader" API="D3D" PIXEL_SHADER="TRUE" TARGET="ps_2_0" ENTRY_POINT="main"><RmShaderCode TYPE="TEXT"><![CDATA[
|
---|
1078 | uniform float epsilonX;
|
---|
1079 | uniform float epsilonY;
|
---|
1080 | uniform float sourceTextureSize;
|
---|
1081 | uniform float numSamples;
|
---|
1082 | uniform float sqrtNumSamples;
|
---|
1083 | sampler indirectTexture: register(s0);
|
---|
1084 | sampler sourceTexture: register(s1);
|
---|
1085 |
|
---|
1086 | float4 main(float3 lightVec: TEXCOORD0,
|
---|
1087 | float2 texCoord: TEXCOORD1,
|
---|
1088 | float2 subTexCoord: TEXCOORD2) : COLOR {
|
---|
1089 |
|
---|
1090 | float4 ocolor = float4(1.0, 1.0, 1.0, 0.0);
|
---|
1091 | float2 epsilon = float2(epsilonX, epsilonY);
|
---|
1092 | float4 value = tex2D(indirectTexture, subTexCoord).xyzw;
|
---|
1093 | float2 coords = float2(0.0, 1.0) - abs(texCoord - ( value.xy - epsilon ) );
|
---|
1094 | if (value.w != 0.0)
|
---|
1095 | {
|
---|
1096 | float2 newcoord = (float2(1.0, 1.0) - value.zw) + ((coords * sourceTextureSize) / sqrtNumSamples);
|
---|
1097 | float depth = length(lightVec);
|
---|
1098 | // Output radial distance
|
---|
1099 | ocolor = (tex2D(sourceTexture, newcoord).w != 0.0) ? float4(depth.xxx, 1.0) : float4(1.0, 1.0, 1.0, 0.0);
|
---|
1100 | }
|
---|
1101 | return ocolor;
|
---|
1102 | }
|
---|
1103 |
|
---|
1104 | ]]></RmShaderCode>
|
---|
1105 | <RmSampler NAME="indirectTexture" API="" REGISTER="0"/>
|
---|
1106 | <RmSampler NAME="sourceTexture" API="" REGISTER="1"/>
|
---|
1107 | <RmShaderConstant NAME="epsilonX" API="" REGISTER="0"/>
|
---|
1108 | <RmShaderConstant NAME="epsilonY" API="" REGISTER="1"/>
|
---|
1109 | <RmShaderConstant NAME="sourceTextureSize" API="" REGISTER="2"/>
|
---|
1110 | <RmShaderConstant NAME="sqrtNumSamples" API="" REGISTER="3"/>
|
---|
1111 | </RmHLSLShader>
|
---|
1112 | <RmHLSLShader NAME="Vertex Shader" API="D3D" PIXEL_SHADER="FALSE" TARGET="vs_1_1" ENTRY_POINT="main"><RmShaderCode TYPE="TEXT"><![CDATA[
|
---|
1113 | float4x4 view_proj_matrix: register(c0);
|
---|
1114 | float4 lightPos: register(c4);
|
---|
1115 | float distanceScale: register(c5);
|
---|
1116 | float4x4 proj_matrix: register(c6);
|
---|
1117 | float time_0_X: register(c10);
|
---|
1118 | float lightPosY;
|
---|
1119 |
|
---|
1120 | struct VS_OUTPUT {
|
---|
1121 | float4 Pos: POSITION;
|
---|
1122 | float3 lightVec: TEXCOORD0;
|
---|
1123 | float2 texCoord: TEXCOORD1;
|
---|
1124 | float2 subTexCoord: TEXCOORD2;
|
---|
1125 | };
|
---|
1126 |
|
---|
1127 | VS_OUTPUT main(float4 Pos: POSITION,
|
---|
1128 | float2 color: COLOR,
|
---|
1129 | float2 subTexCoord: TEXCOORD0){
|
---|
1130 | VS_OUTPUT Out;
|
---|
1131 |
|
---|
1132 | // Animate the light position.
|
---|
1133 | // Comment out this code to use a static light.
|
---|
1134 | // In real applications this work is better done on
|
---|
1135 | // the CPU as it's constant for the whole scene.
|
---|
1136 | float3 lightPos;
|
---|
1137 | lightPos.x = cos(1.321 * time_0_X);
|
---|
1138 | lightPos.z = sin(0.923 * time_0_X);
|
---|
1139 | lightPos.xz = 100 * normalize(lightPos.xz);
|
---|
1140 | lightPos.y = lightPosY;
|
---|
1141 |
|
---|
1142 | // Create view vectors for the light, looking at (0,0,0)
|
---|
1143 | // In real applications this work is better done on
|
---|
1144 | // the CPU as it's constant for the whole scene.
|
---|
1145 | float3 dirZ = -normalize(lightPos);
|
---|
1146 | float3 up = float3(0,0,1);
|
---|
1147 | float3 dirX = cross(up, dirZ);
|
---|
1148 | float3 dirY = cross(dirZ, dirX);
|
---|
1149 |
|
---|
1150 | // Transform into light's view space.
|
---|
1151 | // In real applications we would be better off using a 4x4
|
---|
1152 | // matrix instead, but for this shader it's cheaper to
|
---|
1153 | // just transpose and rotate into light's view space.
|
---|
1154 | float4 pos;
|
---|
1155 | Pos.xyz -= lightPos;
|
---|
1156 | pos.x = dot(dirX, Pos);
|
---|
1157 | pos.y = dot(dirY, Pos);
|
---|
1158 | pos.z = dot(dirZ, Pos);
|
---|
1159 | pos.w = 1;
|
---|
1160 |
|
---|
1161 | // Project it. For this sample using the normal projection
|
---|
1162 | // matrix suffices, however, real applications will typically
|
---|
1163 | // use a separate projection matrix for each light depending
|
---|
1164 | // on its properties such as FOV and range.
|
---|
1165 | Out.Pos = mul(proj_matrix, pos);
|
---|
1166 | Out.lightVec = distanceScale * Pos;
|
---|
1167 |
|
---|
1168 | Out.subTexCoord = subTexCoord;
|
---|
1169 | Out.texCoord = color.xy;
|
---|
1170 |
|
---|
1171 | return Out;
|
---|
1172 | }
|
---|
1173 |
|
---|
1174 |
|
---|
1175 | ]]></RmShaderCode>
|
---|
1176 | <RmShaderConstant NAME="distanceScale" API="" REGISTER="5"/>
|
---|
1177 | <RmShaderConstant NAME="lightPosY" API="" REGISTER="11"/>
|
---|
1178 | <RmShaderConstant NAME="proj_matrix" API="" REGISTER="6"/>
|
---|
1179 | <RmShaderConstant NAME="time_0_X" API="" REGISTER="10"/>
|
---|
1180 | </RmHLSLShader>
|
---|
1181 | <RmRenderTarget NAME="ShadowMap" API="" INDEX="0" RENDER_TO_SCREEN="FALSE" COLOR_CLEAR="TRUE" DEPTH_CLEAR="TRUE" CLEAR_COLOR_VALUE="16777215" DEPTH_CLEAR_VALUE="1.000000"/>
|
---|
1182 | <RmStreamMapReference NAME="Stream Mapping IndirectTexturing" API=""/>
|
---|
1183 | <RmTextureObject NAME="sourceTexture" API="D3D" STATE_INDEX="1" VERTEX_TEXTURE="FALSE">
|
---|
1184 | <RmTextureReference NAME="sourceTexture" API=""/>
|
---|
1185 | </RmTextureObject>
|
---|
1186 | <RmTextureObject NAME="indirectTexture" API="D3D" STATE_INDEX="0" VERTEX_TEXTURE="FALSE">
|
---|
1187 | <RmTextureReference NAME="indirectTexture" API=""/>
|
---|
1188 | <RmState NAME="D3DSAMP_MAGFILTER" API="D3D" STATE="5" VALUE="1" USAGE="SAMPLER_STATE"/>
|
---|
1189 | <RmState NAME="D3DSAMP_MINFILTER" API="D3D" STATE="6" VALUE="1" USAGE="SAMPLER_STATE"/>
|
---|
1190 | <RmState NAME="D3DSAMP_MIPFILTER" API="D3D" STATE="7" VALUE="0" USAGE="SAMPLER_STATE"/>
|
---|
1191 | </RmTextureObject>
|
---|
1192 | </RmPass>
|
---|
1193 | <RmPass NAME="LightPass" API="D3D" PASS_INDEX="2" ENABLED="TRUE">
|
---|
1194 | <RmModelReference NAME="Sphere" API=""/>
|
---|
1195 | <RmRenderStateBlock NAME="Render State" API="D3D"/>
|
---|
1196 | <RmHLSLShader NAME="Vertex Shader" API="D3D" PIXEL_SHADER="FALSE" TARGET="vs_1_1" ENTRY_POINT="main"><RmShaderCode TYPE="TEXT"><![CDATA[
|
---|
1197 | float4x4 view_proj_matrix: register(c0);
|
---|
1198 | float4 lightPos: register(c4);
|
---|
1199 | float time_0_X: register(c5);
|
---|
1200 | float lightPosY;
|
---|
1201 |
|
---|
1202 | struct VS_OUTPUT {
|
---|
1203 | float4 Pos: POSITION;
|
---|
1204 | };
|
---|
1205 |
|
---|
1206 | VS_OUTPUT main(float4 Pos: POSITION){
|
---|
1207 | VS_OUTPUT Out;
|
---|
1208 |
|
---|
1209 | // Animate the light position.
|
---|
1210 | // Comment out this code to use a static light.
|
---|
1211 | // In real applications this work is better done on
|
---|
1212 | // the CPU as it's constant for the whole scene.
|
---|
1213 | float3 lightPos;
|
---|
1214 | lightPos.x = cos(1.321 * time_0_X);
|
---|
1215 | lightPos.z = sin(0.923 * time_0_X);
|
---|
1216 | lightPos.xz = 100 * normalize(lightPos.xz);
|
---|
1217 | lightPos.y = lightPosY;
|
---|
1218 |
|
---|
1219 | // Compensate for source model not being a perfect sphere.
|
---|
1220 | Pos.xyz = 7 * normalize(Pos.xyz);
|
---|
1221 | // Put light in position
|
---|
1222 | Pos.xyz += lightPos;
|
---|
1223 |
|
---|
1224 | Out.Pos = mul(view_proj_matrix, Pos);
|
---|
1225 |
|
---|
1226 | return Out;
|
---|
1227 | }
|
---|
1228 |
|
---|
1229 |
|
---|
1230 | ]]></RmShaderCode>
|
---|
1231 | <RmShaderConstant NAME="lightPosY" API="" REGISTER="6"/>
|
---|
1232 | <RmShaderConstant NAME="time_0_X" API="" REGISTER="5"/>
|
---|
1233 | <RmShaderConstant NAME="view_proj_matrix" API="" REGISTER="0"/>
|
---|
1234 | </RmHLSLShader>
|
---|
1235 | <RmHLSLShader NAME="Pixel Shader" API="D3D" PIXEL_SHADER="TRUE" TARGET="ps_1_1" ENTRY_POINT="main"><RmShaderCode TYPE="TEXT"><![CDATA[
|
---|
1236 | float4 main() : COLOR {
|
---|
1237 | return 1;
|
---|
1238 | }
|
---|
1239 |
|
---|
1240 | ]]></RmShaderCode></RmHLSLShader>
|
---|
1241 | <RmStreamMapReference NAME="PN Stream Mapping" API=""/>
|
---|
1242 | </RmPass>
|
---|
1243 | <RmPass NAME="TrunkPass" API="D3D" PASS_INDEX="3" ENABLED="TRUE">
|
---|
1244 | <RmModelReference NAME="trunk" API=""/>
|
---|
1245 | <RmHLSLShader NAME="Vertex Shader" API="D3D" PIXEL_SHADER="FALSE" TARGET="vs_1_1" ENTRY_POINT="main"><RmShaderCode TYPE="TEXT"><![CDATA[
|
---|
1246 | float4x4 view_proj_matrix: register(c0);
|
---|
1247 | float4 lightPos: register(c4);
|
---|
1248 | float4 view_position: register(c5);
|
---|
1249 | float4x4 proj_matrix: register(c6);
|
---|
1250 | float distanceScale: register(c10);
|
---|
1251 | float time_0_X: register(c11);
|
---|
1252 | float lightPosY;
|
---|
1253 |
|
---|
1254 | struct VS_OUTPUT {
|
---|
1255 | float4 Pos: POSITION;
|
---|
1256 | float3 normal: TEXCOORD0;
|
---|
1257 | float3 lightVec : TEXCOORD1;
|
---|
1258 | float3 viewVec: TEXCOORD2;
|
---|
1259 | float4 shadowCrd: TEXCOORD3;
|
---|
1260 | float2 texCoord: TEXCOORD4;
|
---|
1261 | };
|
---|
1262 |
|
---|
1263 | VS_OUTPUT main(float4 Pos: POSITION,
|
---|
1264 | float3 normal: NORMAL,
|
---|
1265 | float2 texCoord: TEXCOORD0){
|
---|
1266 | VS_OUTPUT Out;
|
---|
1267 |
|
---|
1268 | // Animate the light position.
|
---|
1269 | // Comment out this code to use a static light.
|
---|
1270 | // In real applications this work is better done on
|
---|
1271 | // the CPU as it's constant for the whole scene.
|
---|
1272 | float3 lightPos;
|
---|
1273 | lightPos.x = cos(1.321 * time_0_X);
|
---|
1274 | lightPos.z = sin(0.923 * time_0_X);
|
---|
1275 | lightPos.xz = 100 * normalize(lightPos.xz);
|
---|
1276 | lightPos.y = lightPosY;
|
---|
1277 |
|
---|
1278 | Out.Pos = mul(view_proj_matrix, Pos);
|
---|
1279 | // World-space lighting
|
---|
1280 | Out.normal = normal;
|
---|
1281 | Out.lightVec = distanceScale * (lightPos - Pos.xyz);
|
---|
1282 | Out.viewVec = view_position - Pos.xyz;
|
---|
1283 |
|
---|
1284 | // Create view vectors for the light, looking at (0,0,0)
|
---|
1285 | // In real applications this work is better done on
|
---|
1286 | // the CPU as it's constant for the whole scene.
|
---|
1287 | float3 dirZ = -normalize(lightPos);
|
---|
1288 | float3 up = float3(0,0,1);
|
---|
1289 | float3 dirX = cross(up, dirZ);
|
---|
1290 | float3 dirY = cross(dirZ, dirX);
|
---|
1291 |
|
---|
1292 | // Transform into light's view space.
|
---|
1293 | // In real applications we would be better off using a 4x4
|
---|
1294 | // matrix instead, but for this shader it's cheaper to
|
---|
1295 | // just transpose and rotate into light's view space.
|
---|
1296 | float4 pos;
|
---|
1297 | Pos.xyz -= lightPos;
|
---|
1298 | pos.x = dot(dirX, Pos);
|
---|
1299 | pos.y = dot(dirY, Pos);
|
---|
1300 | pos.z = dot(dirZ, Pos);
|
---|
1301 | pos.w = 1;
|
---|
1302 |
|
---|
1303 | // Project it. For this sample using the normal projection
|
---|
1304 | // matrix suffices, however, real applications will typically
|
---|
1305 | // use a separate projection matrix for each light depending
|
---|
1306 | // on its properties such as FOV and range.
|
---|
1307 | float4 sPos = mul(proj_matrix, pos);
|
---|
1308 |
|
---|
1309 | // Use projective texturing to map the position of each fragment
|
---|
1310 | // to its corresponding texel in the shadow map.
|
---|
1311 | sPos.z += 10;
|
---|
1312 | Out.shadowCrd.x = 0.5 * (sPos.z + sPos.x);
|
---|
1313 | Out.shadowCrd.y = 0.5 * (sPos.z - sPos.y);
|
---|
1314 | Out.shadowCrd.z = 0;
|
---|
1315 | Out.shadowCrd.w = sPos.z;
|
---|
1316 |
|
---|
1317 | Out.texCoord = texCoord;
|
---|
1318 |
|
---|
1319 | return Out;
|
---|
1320 | }
|
---|
1321 |
|
---|
1322 |
|
---|
1323 | ]]></RmShaderCode>
|
---|
1324 | <RmShaderConstant NAME="distanceScale" API="" REGISTER="10"/>
|
---|
1325 | <RmShaderConstant NAME="lightPosY" API="" REGISTER="12"/>
|
---|
1326 | <RmShaderConstant NAME="proj_matrix" API="" REGISTER="6"/>
|
---|
1327 | <RmShaderConstant NAME="time_0_X" API="" REGISTER="11"/>
|
---|
1328 | <RmShaderConstant NAME="view_position" API="" REGISTER="5"/>
|
---|
1329 | <RmShaderConstant NAME="view_proj_matrix" API="" REGISTER="0"/>
|
---|
1330 | </RmHLSLShader>
|
---|
1331 | <RmHLSLShader NAME="Pixel Shader" API="D3D" PIXEL_SHADER="TRUE" TARGET="ps_2_0" ENTRY_POINT="main"><RmShaderCode TYPE="TEXT"><![CDATA[
|
---|
1332 | float backProjectionCut: register(c2);
|
---|
1333 | float Ka: register(c3);
|
---|
1334 | float Kd: register(c4);
|
---|
1335 | float Ks: register(c5);
|
---|
1336 | float4 modelColor: register(c0);
|
---|
1337 | float shadowBias: register(c1);
|
---|
1338 | sampler ShadowMap: register(s0);
|
---|
1339 | sampler SpotLight: register(s1);
|
---|
1340 |
|
---|
1341 | sampler trunkTexture: register(s2);
|
---|
1342 |
|
---|
1343 | float4 main(float3 normal: TEXCOORD0,
|
---|
1344 | float3 lightVec: TEXCOORD1,
|
---|
1345 | float3 viewVec: TEXCOORD2,
|
---|
1346 | float4 shadowCrd: TEXCOORD3,
|
---|
1347 | float2 texCoord: TEXCOORD4) : COLOR {
|
---|
1348 | normal = normalize(normal);
|
---|
1349 | // Radial distance
|
---|
1350 | float depth = length(lightVec);
|
---|
1351 | // Normalizes light vector
|
---|
1352 | lightVec /= depth;
|
---|
1353 |
|
---|
1354 | // Standard lighting
|
---|
1355 | float diffuse = saturate(dot(lightVec, normal));
|
---|
1356 | float specular = pow(saturate(dot(reflect(-normalize(viewVec), normal), lightVec)), 16);
|
---|
1357 |
|
---|
1358 | // The depth of the fragment closest to the light
|
---|
1359 | float shadowMap = tex2Dproj(ShadowMap, shadowCrd);
|
---|
1360 | // A spot image of the spotlight
|
---|
1361 | float spotLight = tex2Dproj(SpotLight, shadowCrd);
|
---|
1362 | // If the depth is larger than the stored depth, this fragment
|
---|
1363 | // is not the closest to the light, that is we are in shadow.
|
---|
1364 | // Otherwise, we're lit. Add a bias to avoid precision issues.
|
---|
1365 | float shadow = (depth < shadowMap + shadowBias);
|
---|
1366 | // Cut back-projection, that is, make sure we don't lit
|
---|
1367 | // anything behind the light. Theoretically, you should just
|
---|
1368 | // cut at w = 0, but in practice you'll have to cut at a
|
---|
1369 | // fairly high positive number to avoid precision issue when
|
---|
1370 | // coordinates approaches zero.
|
---|
1371 | shadow *= (shadowCrd.w > backProjectionCut);
|
---|
1372 | // Modulate with spotlight image
|
---|
1373 | shadow *= spotLight;
|
---|
1374 |
|
---|
1375 | float4 ocolor = tex2D(trunkTexture, texCoord);
|
---|
1376 | // Shadow any light contribution except ambient
|
---|
1377 | return Ka * ocolor + (Kd * diffuse * ocolor + Ks * specular) * shadow;
|
---|
1378 | }
|
---|
1379 |
|
---|
1380 |
|
---|
1381 |
|
---|
1382 | ]]></RmShaderCode>
|
---|
1383 | <RmSampler NAME="ShadowMap" API="" REGISTER="0"/>
|
---|
1384 | <RmSampler NAME="SpotLight" API="" REGISTER="1"/>
|
---|
1385 | <RmSampler NAME="trunkTexture" API="" REGISTER="2"/>
|
---|
1386 | <RmShaderConstant NAME="Ka" API="" REGISTER="3"/>
|
---|
1387 | <RmShaderConstant NAME="Kd" API="" REGISTER="4"/>
|
---|
1388 | <RmShaderConstant NAME="backProjectionCut" API="" REGISTER="2"/>
|
---|
1389 | <RmShaderConstant NAME="shadowBias" API="" REGISTER="1"/>
|
---|
1390 | <RmShaderConstant NAME="Ks" API="" REGISTER="5"/>
|
---|
1391 | </RmHLSLShader>
|
---|
1392 | <RmStreamMapReference NAME="PN Stream Mapping" API=""/>
|
---|
1393 | <RmTextureObject NAME="SpotLight" API="D3D" STATE_INDEX="1" VERTEX_TEXTURE="FALSE">
|
---|
1394 | <RmTextureReference NAME="SpotLight" API=""/>
|
---|
1395 | <RmState NAME="D3DSAMP_ADDRESSU" API="D3D" STATE="1" VALUE="3" USAGE="SAMPLER_STATE"/>
|
---|
1396 | <RmState NAME="D3DSAMP_ADDRESSV" API="D3D" STATE="2" VALUE="3" USAGE="SAMPLER_STATE"/>
|
---|
1397 | <RmState NAME="D3DSAMP_MAGFILTER" API="D3D" STATE="5" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1398 | <RmState NAME="D3DSAMP_MINFILTER" API="D3D" STATE="6" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1399 | <RmState NAME="D3DSAMP_MIPFILTER" API="D3D" STATE="7" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1400 | </RmTextureObject>
|
---|
1401 | <RmTextureObject NAME="ShadowMap" API="D3D" STATE_INDEX="0" VERTEX_TEXTURE="FALSE">
|
---|
1402 | <RmTextureReference NAME="ShadowMap" API=""/>
|
---|
1403 | <RmState NAME="D3DSAMP_ADDRESSU" API="D3D" STATE="1" VALUE="3" USAGE="SAMPLER_STATE"/>
|
---|
1404 | <RmState NAME="D3DSAMP_ADDRESSV" API="D3D" STATE="2" VALUE="3" USAGE="SAMPLER_STATE"/>
|
---|
1405 | <RmState NAME="D3DSAMP_MAGFILTER" API="D3D" STATE="5" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1406 | <RmState NAME="D3DSAMP_MINFILTER" API="D3D" STATE="6" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1407 | <RmState NAME="D3DSAMP_MIPFILTER" API="D3D" STATE="7" VALUE="0" USAGE="SAMPLER_STATE"/>
|
---|
1408 | </RmTextureObject>
|
---|
1409 | <RmTextureObject NAME="trunkTexture" API="D3D" STATE_INDEX="2" VERTEX_TEXTURE="FALSE">
|
---|
1410 | <RmTextureReference NAME="trunkTexture" API=""/>
|
---|
1411 | </RmTextureObject>
|
---|
1412 | </RmPass>
|
---|
1413 | <RmPass NAME="LeavesIndirectTexturingPass" API="D3D" PASS_INDEX="4" ENABLED="TRUE">
|
---|
1414 | <RmModelReference NAME="leavesBillboardCloud" API=""/>
|
---|
1415 | <RmRenderStateBlock NAME="Render State" API="D3D">
|
---|
1416 | <RmState NAME="D3DRS_ALPHAFUNC" API="D3D" STATE="25" VALUE="7" USAGE="RENDER_STATE"/>
|
---|
1417 | <RmState NAME="D3DRS_ALPHAREF" API="D3D" STATE="24" VALUE="272" USAGE="RENDER_STATE"/>
|
---|
1418 | <RmState NAME="D3DRS_ALPHATESTENABLE" API="D3D" STATE="15" VALUE="1" USAGE="RENDER_STATE"/>
|
---|
1419 | <RmState NAME="D3DRS_CULLMODE" API="D3D" STATE="22" VALUE="1" USAGE="RENDER_STATE"/>
|
---|
1420 | </RmRenderStateBlock>
|
---|
1421 | <RmHLSLShader NAME="Pixel Shader" API="D3D" PIXEL_SHADER="TRUE" TARGET="ps_2_0" ENTRY_POINT="main"><RmShaderCode TYPE="TEXT"><![CDATA[
|
---|
1422 | float backProjectionCut: register(c2);
|
---|
1423 | float Ka: register(c3);
|
---|
1424 | float Kd: register(c4);
|
---|
1425 | float Ks: register(c5);
|
---|
1426 | float4 modelColor: register(c0);
|
---|
1427 | float shadowBias: register(c1);
|
---|
1428 | sampler ShadowMap: register(s0);
|
---|
1429 | sampler SpotLight: register(s1);
|
---|
1430 |
|
---|
1431 | uniform float epsilonX;
|
---|
1432 | uniform float epsilonY;
|
---|
1433 | uniform float sourceTextureSize;
|
---|
1434 | uniform float numSamples;
|
---|
1435 | uniform float sqrtNumSamples;
|
---|
1436 | sampler indirectTexture: register(s2);
|
---|
1437 | sampler sourceTexture: register(s3);
|
---|
1438 |
|
---|
1439 | float4 main(float3 normal: TEXCOORD0,
|
---|
1440 | float3 lightVec: TEXCOORD1,
|
---|
1441 | float3 viewVec: TEXCOORD2,
|
---|
1442 | float4 shadowCrd: TEXCOORD3,
|
---|
1443 | float2 texCoord: TEXCOORD4,
|
---|
1444 | float2 subTexCoord: TEXCOORD5) : COLOR {
|
---|
1445 | normal = normalize(normal);
|
---|
1446 | // Radial distance
|
---|
1447 | float depth = length(lightVec);
|
---|
1448 | // Normalizes light vector
|
---|
1449 | lightVec /= depth;
|
---|
1450 |
|
---|
1451 | // Standard lighting
|
---|
1452 | float diffuse = clamp(dot(lightVec, normal), 0.0, 1.0) + clamp(-dot(lightVec, normal), 0.0, 1.0);
|
---|
1453 | float specular = 0.0;
|
---|
1454 | //float specular = pow(saturate(dot(reflect(-normalize(viewVec), normal), lightVec)), 16);
|
---|
1455 |
|
---|
1456 | // The depth of the fragment closest to the light
|
---|
1457 | float shadowMap = tex2Dproj(ShadowMap, shadowCrd);
|
---|
1458 | // A spot image of the spotlight
|
---|
1459 | float spotLight = tex2Dproj(SpotLight, shadowCrd);
|
---|
1460 | // If the depth is larger than the stored depth, this fragment
|
---|
1461 | // is not the closest to the light, that is we are in shadow.
|
---|
1462 | // Otherwise, we're lit. Add a bias to avoid precision issues.
|
---|
1463 | float shadow = (depth < shadowMap + shadowBias);
|
---|
1464 | // Cut back-projection, that is, make sure we don't lit
|
---|
1465 | // anything behind the light. Theoretically, you should just
|
---|
1466 | // cut at w = 0, but in practice you'll have to cut at a
|
---|
1467 | // fairly high positive number to avoid precision issue when
|
---|
1468 | // coordinates approaches zero.
|
---|
1469 | shadow *= (shadowCrd.w > backProjectionCut);
|
---|
1470 | // Modulate with spotlight image
|
---|
1471 | shadow *= spotLight;
|
---|
1472 |
|
---|
1473 |
|
---|
1474 | float4 ocolor = float4(0.0, 0.0, 0.0, 0.0);
|
---|
1475 | float2 epsilon = float2(epsilonX, epsilonY);
|
---|
1476 | float4 value = tex2D(indirectTexture, subTexCoord).xyzw;
|
---|
1477 | float2 coords = float2(0.0, 1.0) - abs(texCoord - ( value.xy - epsilon ) );
|
---|
1478 | if (value.w != 0.0)
|
---|
1479 | {
|
---|
1480 | float2 newcoord = (float2(1.0, 1.0) - value.zw) + ((coords * sourceTextureSize) / sqrtNumSamples);
|
---|
1481 | ocolor = float4(tex2D(sourceTexture, newcoord).xyzw);
|
---|
1482 | ocolor = float4(Ka * ocolor.xyz + (Kd * diffuse * ocolor.xyz + Ks * specular) * shadow, ocolor.w);
|
---|
1483 | }
|
---|
1484 |
|
---|
1485 |
|
---|
1486 | // Shadow any light contribution except ambient
|
---|
1487 | return ocolor;
|
---|
1488 | }
|
---|
1489 |
|
---|
1490 |
|
---|
1491 |
|
---|
1492 | ]]></RmShaderCode>
|
---|
1493 | <RmSampler NAME="ShadowMap" API="" REGISTER="0"/>
|
---|
1494 | <RmSampler NAME="SpotLight" API="" REGISTER="1"/>
|
---|
1495 | <RmSampler NAME="indirectTexture" API="" REGISTER="2"/>
|
---|
1496 | <RmSampler NAME="sourceTexture" API="" REGISTER="3"/>
|
---|
1497 | <RmShaderConstant NAME="backProjectionCut" API="" REGISTER="2"/>
|
---|
1498 | <RmShaderConstant NAME="epsilonX" API="" REGISTER="6"/>
|
---|
1499 | <RmShaderConstant NAME="epsilonY" API="" REGISTER="7"/>
|
---|
1500 | <RmShaderConstant NAME="Ka" API="" REGISTER="3"/>
|
---|
1501 | <RmShaderConstant NAME="shadowBias" API="" REGISTER="1"/>
|
---|
1502 | <RmShaderConstant NAME="Kd" API="" REGISTER="4"/>
|
---|
1503 | <RmShaderConstant NAME="sourceTextureSize" API="" REGISTER="8"/>
|
---|
1504 | <RmShaderConstant NAME="sqrtNumSamples" API="" REGISTER="9"/>
|
---|
1505 | </RmHLSLShader>
|
---|
1506 | <RmHLSLShader NAME="Vertex Shader" API="D3D" PIXEL_SHADER="FALSE" TARGET="vs_2_0" ENTRY_POINT="main"><RmShaderCode TYPE="TEXT"><![CDATA[
|
---|
1507 | float4x4 view_proj_matrix: register(c0);
|
---|
1508 | float4 lightPos: register(c4);
|
---|
1509 | float4 view_position: register(c5);
|
---|
1510 | float4x4 proj_matrix: register(c6);
|
---|
1511 | float distanceScale: register(c10);
|
---|
1512 | float time_0_X: register(c11);
|
---|
1513 | float lightPosY;
|
---|
1514 |
|
---|
1515 | struct VS_OUTPUT {
|
---|
1516 | float4 Pos: POSITION;
|
---|
1517 | float3 normal: TEXCOORD0;
|
---|
1518 | float3 lightVec : TEXCOORD1;
|
---|
1519 | float3 viewVec: TEXCOORD2;
|
---|
1520 | float4 shadowCrd: TEXCOORD3;
|
---|
1521 | float2 texCoord: TEXCOORD4;
|
---|
1522 | float2 subTexCoord: TEXCOORD5;
|
---|
1523 | };
|
---|
1524 |
|
---|
1525 | VS_OUTPUT main(float4 Pos: POSITION,
|
---|
1526 | float3 normal: NORMAL,
|
---|
1527 | float2 color: COLOR,
|
---|
1528 | float2 subTexCoord: TEXCOORD0){
|
---|
1529 | VS_OUTPUT Out;
|
---|
1530 |
|
---|
1531 | // Animate the light position.
|
---|
1532 | // Comment out this code to use a static light.
|
---|
1533 | // In real applications this work is better done on
|
---|
1534 | // the CPU as it's constant for the whole scene.
|
---|
1535 | float3 lightPos;
|
---|
1536 | lightPos.x = cos(1.321 * time_0_X);
|
---|
1537 | lightPos.z = sin(0.923 * time_0_X);
|
---|
1538 | lightPos.xz = 100 * normalize(lightPos.xz);
|
---|
1539 | lightPos.y = lightPosY;
|
---|
1540 |
|
---|
1541 | Out.Pos = mul(view_proj_matrix, Pos);
|
---|
1542 | // World-space lighting
|
---|
1543 | Out.normal = normal;
|
---|
1544 | Out.lightVec = distanceScale * (lightPos - Pos.xyz);
|
---|
1545 | Out.viewVec = view_position - Pos.xyz;
|
---|
1546 |
|
---|
1547 | // Create view vectors for the light, looking at (0,0,0)
|
---|
1548 | // In real applications this work is better done on
|
---|
1549 | // the CPU as it's constant for the whole scene.
|
---|
1550 | float3 dirZ = -normalize(lightPos);
|
---|
1551 | float3 up = float3(0,0,1);
|
---|
1552 | float3 dirX = cross(up, dirZ);
|
---|
1553 | float3 dirY = cross(dirZ, dirX);
|
---|
1554 |
|
---|
1555 | // Transform into light's view space.
|
---|
1556 | // In real applications we would be better off using a 4x4
|
---|
1557 | // matrix instead, but for this shader it's cheaper to
|
---|
1558 | // just transpose and rotate into light's view space.
|
---|
1559 | float4 pos;
|
---|
1560 | Pos.xyz -= lightPos;
|
---|
1561 | pos.x = dot(dirX, Pos);
|
---|
1562 | pos.y = dot(dirY, Pos);
|
---|
1563 | pos.z = dot(dirZ, Pos);
|
---|
1564 | pos.w = 1;
|
---|
1565 |
|
---|
1566 | // Project it. For this sample using the normal projection
|
---|
1567 | // matrix suffices, however, real applications will typically
|
---|
1568 | // use a separate projection matrix for each light depending
|
---|
1569 | // on its properties such as FOV and range.
|
---|
1570 | float4 sPos = mul(proj_matrix, pos);
|
---|
1571 |
|
---|
1572 | // Use projective texturing to map the position of each fragment
|
---|
1573 | // to its corresponding texel in the shadow map.
|
---|
1574 | sPos.z += 10;
|
---|
1575 | Out.shadowCrd.x = 0.5 * (sPos.z + sPos.x);
|
---|
1576 | Out.shadowCrd.y = 0.5 * (sPos.z - sPos.y);
|
---|
1577 | Out.shadowCrd.z = 0;
|
---|
1578 | Out.shadowCrd.w = sPos.z;
|
---|
1579 |
|
---|
1580 | Out.subTexCoord = subTexCoord;
|
---|
1581 | Out.texCoord = color.xy;
|
---|
1582 |
|
---|
1583 | return Out;
|
---|
1584 | }
|
---|
1585 |
|
---|
1586 |
|
---|
1587 | ]]></RmShaderCode>
|
---|
1588 | <RmShaderConstant NAME="distanceScale" API="" REGISTER="10"/>
|
---|
1589 | <RmShaderConstant NAME="lightPosY" API="" REGISTER="12"/>
|
---|
1590 | <RmShaderConstant NAME="proj_matrix" API="" REGISTER="6"/>
|
---|
1591 | <RmShaderConstant NAME="time_0_X" API="" REGISTER="11"/>
|
---|
1592 | <RmShaderConstant NAME="view_position" API="" REGISTER="5"/>
|
---|
1593 | <RmShaderConstant NAME="view_proj_matrix" API="" REGISTER="0"/>
|
---|
1594 | </RmHLSLShader>
|
---|
1595 | <RmStreamMapReference NAME="Stream Mapping IndirectTexturing" API=""/>
|
---|
1596 | <RmTextureObject NAME="ShadowMap" API="D3D" STATE_INDEX="0" VERTEX_TEXTURE="FALSE">
|
---|
1597 | <RmTextureReference NAME="ShadowMap" API=""/>
|
---|
1598 | <RmState NAME="D3DSAMP_ADDRESSU" API="D3D" STATE="1" VALUE="3" USAGE="SAMPLER_STATE"/>
|
---|
1599 | <RmState NAME="D3DSAMP_ADDRESSV" API="D3D" STATE="2" VALUE="3" USAGE="SAMPLER_STATE"/>
|
---|
1600 | <RmState NAME="D3DSAMP_MAGFILTER" API="D3D" STATE="5" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1601 | <RmState NAME="D3DSAMP_MINFILTER" API="D3D" STATE="6" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1602 | <RmState NAME="D3DSAMP_MIPFILTER" API="D3D" STATE="7" VALUE="0" USAGE="SAMPLER_STATE"/>
|
---|
1603 | </RmTextureObject>
|
---|
1604 | <RmTextureObject NAME="SpotLight" API="D3D" STATE_INDEX="1" VERTEX_TEXTURE="FALSE">
|
---|
1605 | <RmTextureReference NAME="SpotLight" API=""/>
|
---|
1606 | <RmState NAME="D3DSAMP_ADDRESSU" API="D3D" STATE="1" VALUE="3" USAGE="SAMPLER_STATE"/>
|
---|
1607 | <RmState NAME="D3DSAMP_ADDRESSV" API="D3D" STATE="2" VALUE="3" USAGE="SAMPLER_STATE"/>
|
---|
1608 | <RmState NAME="D3DSAMP_MAGFILTER" API="D3D" STATE="5" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1609 | <RmState NAME="D3DSAMP_MINFILTER" API="D3D" STATE="6" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1610 | <RmState NAME="D3DSAMP_MIPFILTER" API="D3D" STATE="7" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1611 | </RmTextureObject>
|
---|
1612 | <RmTextureObject NAME="indirectTexture" API="D3D" STATE_INDEX="2" VERTEX_TEXTURE="FALSE">
|
---|
1613 | <RmTextureReference NAME="indirectTexture" API=""/>
|
---|
1614 | <RmState NAME="D3DSAMP_MAGFILTER" API="D3D" STATE="5" VALUE="1" USAGE="SAMPLER_STATE"/>
|
---|
1615 | <RmState NAME="D3DSAMP_MINFILTER" API="D3D" STATE="6" VALUE="1" USAGE="SAMPLER_STATE"/>
|
---|
1616 | <RmState NAME="D3DSAMP_MIPFILTER" API="D3D" STATE="7" VALUE="0" USAGE="SAMPLER_STATE"/>
|
---|
1617 | </RmTextureObject>
|
---|
1618 | <RmTextureObject NAME="sourceTexture" API="D3D" STATE_INDEX="3" VERTEX_TEXTURE="FALSE">
|
---|
1619 | <RmTextureReference NAME="sourceTexture" API=""/>
|
---|
1620 | <RmState NAME="D3DSAMP_MAGFILTER" API="D3D" STATE="5" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1621 | <RmState NAME="D3DSAMP_MINFILTER" API="D3D" STATE="6" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1622 | <RmState NAME="D3DSAMP_MIPFILTER" API="D3D" STATE="7" VALUE="0" USAGE="SAMPLER_STATE"/>
|
---|
1623 | </RmTextureObject>
|
---|
1624 | </RmPass>
|
---|
1625 | <RmPass NAME="PlatformPass" API="D3D" PASS_INDEX="5" ENABLED="TRUE">
|
---|
1626 | <RmModelReference NAME="Disc" API=""/>
|
---|
1627 | <RmHLSLShader NAME="Vertex Shader" API="D3D" PIXEL_SHADER="FALSE" TARGET="vs_1_1" ENTRY_POINT="main"><RmShaderCode TYPE="TEXT"><![CDATA[
|
---|
1628 | float4x4 view_proj_matrix: register(c0);
|
---|
1629 | float4 lightPos: register(c4);
|
---|
1630 | float4 view_position: register(c5);
|
---|
1631 | float4x4 proj_matrix: register(c6);
|
---|
1632 | float distanceScale: register(c10);
|
---|
1633 | float time_0_X: register(c11);
|
---|
1634 | float lightPosY;
|
---|
1635 |
|
---|
1636 | struct VS_OUTPUT {
|
---|
1637 | float4 Pos: POSITION;
|
---|
1638 | float3 normal: TEXCOORD0;
|
---|
1639 | float3 lightVec: TEXCOORD1;
|
---|
1640 | float3 viewVec: TEXCOORD2;
|
---|
1641 | float4 shadowCrd: TEXCOORD3;
|
---|
1642 | };
|
---|
1643 |
|
---|
1644 | VS_OUTPUT main(float4 Pos: POSITION, float3 normal: NORMAL){
|
---|
1645 | VS_OUTPUT Out;
|
---|
1646 |
|
---|
1647 | // Animate the light position.
|
---|
1648 | // Comment out this code to use a static light.
|
---|
1649 | // In real applications this work is better done on
|
---|
1650 | // the CPU as it's constant for the whole scene.
|
---|
1651 | float3 lightPos;
|
---|
1652 | lightPos.x = cos(1.321 * time_0_X);
|
---|
1653 | lightPos.z = sin(0.923 * time_0_X);
|
---|
1654 | lightPos.xz = 100 * normalize(lightPos.xz);
|
---|
1655 | lightPos.y = lightPosY;
|
---|
1656 |
|
---|
1657 | normal = normal.xyz;
|
---|
1658 |
|
---|
1659 | Out.Pos = mul(view_proj_matrix, Pos);
|
---|
1660 | // World-space lighting
|
---|
1661 | Out.normal = normal;
|
---|
1662 | Out.lightVec = distanceScale * (lightPos - Pos.xyz);
|
---|
1663 | Out.viewVec = view_position - Pos.xyz;
|
---|
1664 |
|
---|
1665 | // Create view vectors for the light, looking at (0,0,0)
|
---|
1666 | // In real applications this work is better done on
|
---|
1667 | // the CPU as it's constant for the whole scene.
|
---|
1668 | float3 dirZ = -normalize(lightPos);
|
---|
1669 | float3 up = float3(0,0,1);
|
---|
1670 | float3 dirX = cross(up, dirZ);
|
---|
1671 | float3 dirY = cross(dirZ, dirX);
|
---|
1672 |
|
---|
1673 | // Transform into light's view space.
|
---|
1674 | // In real applications we would be better off using a 4x4
|
---|
1675 | // matrix instead, but for this shader it's cheaper to
|
---|
1676 | // just transpose and rotate into light's view space.
|
---|
1677 | float4 pos;
|
---|
1678 | Pos.xyz -= lightPos;
|
---|
1679 | pos.x = dot(dirX, Pos);
|
---|
1680 | pos.y = dot(dirY, Pos);
|
---|
1681 | pos.z = dot(dirZ, Pos);
|
---|
1682 | pos.w = 1;
|
---|
1683 |
|
---|
1684 | // Project it. For this sample using the normal projection
|
---|
1685 | // matrix suffices, however, real applications will typically
|
---|
1686 | // use a separate projection matrix for each light depending
|
---|
1687 | // on its properties such as FOV and range.
|
---|
1688 | float4 sPos = mul(proj_matrix, pos);
|
---|
1689 |
|
---|
1690 | // Use projective texturing to map the position of each fragment
|
---|
1691 | // to its corresponding texel in the shadow map.
|
---|
1692 | sPos.z += 10;
|
---|
1693 | Out.shadowCrd.x = 0.5 * (sPos.z + sPos.x);
|
---|
1694 | Out.shadowCrd.y = 0.5 * (sPos.z - sPos.y);
|
---|
1695 | Out.shadowCrd.z = 0;
|
---|
1696 | Out.shadowCrd.w = sPos.z;
|
---|
1697 |
|
---|
1698 | return Out;
|
---|
1699 | }
|
---|
1700 |
|
---|
1701 |
|
---|
1702 | ]]></RmShaderCode>
|
---|
1703 | <RmShaderConstant NAME="distanceScale" API="" REGISTER="10"/>
|
---|
1704 | <RmShaderConstant NAME="lightPosY" API="" REGISTER="12"/>
|
---|
1705 | <RmShaderConstant NAME="proj_matrix" API="" REGISTER="6"/>
|
---|
1706 | <RmShaderConstant NAME="time_0_X" API="" REGISTER="11"/>
|
---|
1707 | <RmShaderConstant NAME="view_position" API="" REGISTER="5"/>
|
---|
1708 | <RmShaderConstant NAME="view_proj_matrix" API="" REGISTER="0"/>
|
---|
1709 | </RmHLSLShader>
|
---|
1710 | <RmHLSLShader NAME="Pixel Shader" API="D3D" PIXEL_SHADER="TRUE" TARGET="ps_2_0" ENTRY_POINT="main"><RmShaderCode TYPE="TEXT"><![CDATA[
|
---|
1711 | float backProjectionCut;
|
---|
1712 | float Ka;
|
---|
1713 | float Kd;
|
---|
1714 | float Ks;
|
---|
1715 | float4 platformColor;
|
---|
1716 | float shadowBias;
|
---|
1717 | sampler ShadowMap;
|
---|
1718 | sampler SpotLight;
|
---|
1719 |
|
---|
1720 | float4 main( float3 normal: TEXCOORD0,
|
---|
1721 | float3 lightVec: TEXCOORD1,
|
---|
1722 | float3 viewVec: TEXCOORD2,
|
---|
1723 | float4 shadowCrd: TEXCOORD3) : COLOR
|
---|
1724 | {
|
---|
1725 | normal = normalize(normal);
|
---|
1726 |
|
---|
1727 | // Radial distance
|
---|
1728 | float depth = length(lightVec);
|
---|
1729 | // Normalizes light vector
|
---|
1730 | lightVec /= depth;
|
---|
1731 |
|
---|
1732 | // Standard lighting
|
---|
1733 | float diffuse = saturate(dot(lightVec, normal));
|
---|
1734 | float specular = pow(saturate(dot(reflect(-normalize(viewVec), normal), lightVec)), 16);
|
---|
1735 |
|
---|
1736 | // The depth of the fragment closest to the light
|
---|
1737 | float shadowMap = tex2Dproj(ShadowMap, shadowCrd);
|
---|
1738 | // A spot image of the spotlight
|
---|
1739 | float spotLight = tex2Dproj(SpotLight, shadowCrd);
|
---|
1740 | // If the depth is larger than the stored depth, this fragment
|
---|
1741 | // is not the closest to the light, that is we are in shadow.
|
---|
1742 | // Otherwise, we're lit. Add a bias to avoid precision issues.
|
---|
1743 | float shadow = (depth < shadowMap + shadowBias);
|
---|
1744 | // Cut back-projection, that is, make sure we don't lit
|
---|
1745 | // anything behind the light. Theoretically, you should just
|
---|
1746 | // cut at w = 0, but in practice you'll have to cut at a
|
---|
1747 | // fairly high positive number to avoid precision issue when
|
---|
1748 | // coordinates approaches zero.
|
---|
1749 | shadow *= (shadowCrd.w > backProjectionCut);
|
---|
1750 | // Modulate with spotlight image
|
---|
1751 | shadow *= spotLight;
|
---|
1752 |
|
---|
1753 | // Shadow any light contribution except ambient
|
---|
1754 | return Ka * platformColor + (Kd * diffuse * platformColor + Ks * specular) * shadow;
|
---|
1755 |
|
---|
1756 | }
|
---|
1757 |
|
---|
1758 |
|
---|
1759 |
|
---|
1760 |
|
---|
1761 |
|
---|
1762 | ]]></RmShaderCode>
|
---|
1763 | <RmSampler NAME="ShadowMap" API="" REGISTER="0"/>
|
---|
1764 | <RmSampler NAME="SpotLight" API="" REGISTER="1"/>
|
---|
1765 | <RmShaderConstant NAME="Ks" API="" REGISTER="3"/>
|
---|
1766 | <RmShaderConstant NAME="Ka" API="" REGISTER="1"/>
|
---|
1767 | <RmShaderConstant NAME="Kd" API="" REGISTER="2"/>
|
---|
1768 | <RmShaderConstant NAME="backProjectionCut" API="" REGISTER="0"/>
|
---|
1769 | <RmShaderConstant NAME="platformColor" API="" REGISTER="4"/>
|
---|
1770 | <RmShaderConstant NAME="shadowBias" API="" REGISTER="5"/>
|
---|
1771 | </RmHLSLShader>
|
---|
1772 | <RmStreamMapReference NAME="PN Stream Mapping" API=""/>
|
---|
1773 | <RmTextureObject NAME="SpotLight" API="D3D" STATE_INDEX="1" VERTEX_TEXTURE="FALSE">
|
---|
1774 | <RmTextureReference NAME="SpotLight" API=""/>
|
---|
1775 | <RmState NAME="D3DSAMP_ADDRESSU" API="D3D" STATE="1" VALUE="3" USAGE="SAMPLER_STATE"/>
|
---|
1776 | <RmState NAME="D3DSAMP_ADDRESSV" API="D3D" STATE="2" VALUE="3" USAGE="SAMPLER_STATE"/>
|
---|
1777 | <RmState NAME="D3DSAMP_MAGFILTER" API="D3D" STATE="5" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1778 | <RmState NAME="D3DSAMP_MINFILTER" API="D3D" STATE="6" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1779 | <RmState NAME="D3DSAMP_MIPFILTER" API="D3D" STATE="7" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1780 | </RmTextureObject>
|
---|
1781 | <RmTextureObject NAME="ShadowMap" API="D3D" STATE_INDEX="0" VERTEX_TEXTURE="FALSE">
|
---|
1782 | <RmTextureReference NAME="ShadowMap" API=""/>
|
---|
1783 | <RmState NAME="D3DSAMP_ADDRESSU" API="D3D" STATE="1" VALUE="3" USAGE="SAMPLER_STATE"/>
|
---|
1784 | <RmState NAME="D3DSAMP_ADDRESSV" API="D3D" STATE="2" VALUE="3" USAGE="SAMPLER_STATE"/>
|
---|
1785 | <RmState NAME="D3DSAMP_MAGFILTER" API="D3D" STATE="5" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1786 | <RmState NAME="D3DSAMP_MINFILTER" API="D3D" STATE="6" VALUE="2" USAGE="SAMPLER_STATE"/>
|
---|
1787 | <RmState NAME="D3DSAMP_MIPFILTER" API="D3D" STATE="7" VALUE="0" USAGE="SAMPLER_STATE"/>
|
---|
1788 | </RmTextureObject>
|
---|
1789 | </RmPass>
|
---|
1790 | </RmDirectXEffect>
|
---|
1791 | <RmColorVariable NAME="modelColor" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE_0="0.360784" VALUE_1="0.451843" VALUE_2="1.000000" VALUE_3="1.000000"/>
|
---|
1792 | <Rm2DTextureVariable NAME="Wood Floor" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" FILE_NAME="Wood.dds" ORIGIN="0"/>
|
---|
1793 | <RmStreamMap NAME="PN Stream Mapping" API="">
|
---|
1794 | <RmStream NAME="Normal3" API="" STRIDE="32">
|
---|
1795 | <RmStreamChannel NAME="Position_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="0" USAGE="0" USAGE_INDEX="0"/>
|
---|
1796 | <RmStreamChannel NAME="TexCoord_0" API="" DATA_SIZE="8" DATA_TYPE="1" REGISTER="0" USAGE="5" USAGE_INDEX="0"/>
|
---|
1797 | <RmStreamChannel NAME="Normal_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="0" USAGE="3" USAGE_INDEX="0"/>
|
---|
1798 | </RmStream>
|
---|
1799 | </RmStreamMap>
|
---|
1800 | <RmStreamMap NAME="Stream Mapping IndirectTexturing" API="">
|
---|
1801 | <RmStream NAME="Stream 0" API="" STRIDE="36">
|
---|
1802 | <RmStreamChannel NAME="Position_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="0" USAGE="0" USAGE_INDEX="0"/>
|
---|
1803 | <RmStreamChannel NAME="TexCoord_0" API="" DATA_SIZE="8" DATA_TYPE="1" REGISTER="0" USAGE="5" USAGE_INDEX="0"/>
|
---|
1804 | <RmStreamChannel NAME="Color_0" API="" DATA_SIZE="4" DATA_TYPE="4" REGISTER="0" USAGE="10" USAGE_INDEX="0"/>
|
---|
1805 | <RmStreamChannel NAME="Normal_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="0" USAGE="3" USAGE_INDEX="0"/>
|
---|
1806 | </RmStream>
|
---|
1807 | </RmStreamMap>
|
---|
1808 | <RmModelData NAME="ScreenAlignedQuad" API="" FILE_NAME=".\ScreenAlignedQuad.3ds" ORIENTATION="0"/>
|
---|
1809 | <RmModelData NAME="leavesBillboardCloud" API="" FILE_NAME=".\chestnutLeavesBillboardCloudGrouped.x" ORIENTATION="0"/>
|
---|
1810 | <RmModelData NAME="Disc" API="" FILE_NAME=".\disc.x" ORIENTATION="0"/>
|
---|
1811 | <RmModelData NAME="trunk" API="" FILE_NAME=".\chestnutTrunkLevel3.x" ORIENTATION="0"/>
|
---|
1812 | <RmModelData NAME="Sphere" API="" FILE_NAME=".\Sphere.3ds" ORIENTATION="0"/>
|
---|
1813 | </RmEffectGroup>
|
---|
1814 | <RmVectorVariable NAME="view_position" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="ViewPosition" VALUE_0="-71.222672" VALUE_1="-128.383163" VALUE_2="-17.588064" VALUE_3="1.000000" MIN="-10.000000" MAX="10.000000" CLAMP="FALSE" NORMALIZE="FALSE"/>
|
---|
1815 | <RmMatrixVariable NAME="view_proj_matrix" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="ViewProjection" VALUE_0="1.016186" VALUE_1="-0.587463" VALUE_2="0.173118" VALUE_3="0.000000" VALUE_4="0.448028" VALUE_5="0.076275" VALUE_6="-2.371050" VALUE_7="-0.000046" VALUE_8="0.482154" VALUE_9="0.869111" VALUE_10="0.119065" VALUE_11="147.012634" VALUE_12="0.481672" VALUE_13="0.868242" VALUE_14="0.118946" VALUE_15="147.865631"/>
|
---|
1816 | <RmMatrixVariable NAME="proj_matrix" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="Projection" VALUE_0="1.186472" VALUE_1="0.000000" VALUE_2="0.000000" VALUE_3="0.000000" VALUE_4="0.000000" VALUE_5="2.414213" VALUE_6="0.000000" VALUE_7="0.000000" VALUE_8="0.000000" VALUE_9="0.000000" VALUE_10="1.001001" VALUE_11="-1.001001" VALUE_12="0.000000" VALUE_13="0.000000" VALUE_14="1.000000" VALUE_15="0.000000"/>
|
---|
1817 | <RmFloatVariable NAME="time_0_X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="Time0_X" VALUE="87.033546" MIN="-1.000000" MAX="1.000000" CLAMP="FALSE"/>
|
---|
1818 | </RmEffectWorkspace>
|
---|
1819 | </RENDER_MONKEY>
|
---|