1
0
Fork 0

Merge branch 'master' of D:\Git_New\fgdata

This commit is contained in:
Vivian Meazza 2012-08-06 10:29:34 +01:00
commit 5e253072ef
9 changed files with 572 additions and 307 deletions

View file

@ -13,6 +13,13 @@
<wrap-t>repeat</wrap-t> <wrap-t>repeat</wrap-t>
<internal-format>normalized</internal-format> <internal-format>normalized</internal-format>
</texture> </texture>
<texture n="1">
<image>Textures\film-dirt.png</image>
<filter>linear-mipmap-linear</filter>
<wrap-s>repeat</wrap-s>
<wrap-t>repeat</wrap-t>
<internal-format>normalized</internal-format>
</texture>
<cinema> <cinema>
<vignette><use>/sim/rendering/rembrandt/cinema/vignette</use></vignette> <vignette><use>/sim/rendering/rembrandt/cinema/vignette</use></vignette>
@ -22,6 +29,11 @@
<red-shift><use>/sim/rendering/rembrandt/cinema/red-shift</use></red-shift> <red-shift><use>/sim/rendering/rembrandt/cinema/red-shift</use></red-shift>
<green-shift><use>/sim/rendering/rembrandt/cinema/green-shift</use></green-shift> <green-shift><use>/sim/rendering/rembrandt/cinema/green-shift</use></green-shift>
<blue-shift><use>/sim/rendering/rembrandt/cinema/blue-shift</use></blue-shift> <blue-shift><use>/sim/rendering/rembrandt/cinema/blue-shift</use></blue-shift>
<distortion><use>/sim/rendering/rembrandt/cinema/distortion</use></distortion>
<distortion-factor><use>/sim/rendering/rembrandt/cinema/distortion-factor</use></distortion-factor>
<color-fringe><use>/sim/rendering/rembrandt/cinema/color-fringe</use></color-fringe>
<color-fringe-factor><use>/sim/rendering/rembrandt/cinema/color-fringe-factor</use></color-fringe-factor>
<film-wear><use>/sim/rendering/rembrandt/cinema/film-wear</use></film-wear>
</cinema> </cinema>
<buffer-nw-enabled><use>/sim/rendering/rembrandt/debug-buffer[0]/enabled</use></buffer-nw-enabled> <buffer-nw-enabled><use>/sim/rendering/rembrandt/debug-buffer[0]/enabled</use></buffer-nw-enabled>
@ -34,103 +46,6 @@
<buffer-se-name><use>/sim/rendering/rembrandt/debug-buffer[3]/name</use></buffer-se-name> <buffer-se-name><use>/sim/rendering/rembrandt/debug-buffer[3]/name</use></buffer-se-name>
</parameters> </parameters>
<technique n="9"> <technique n="9">
<predicate>
<and>
<or>
<property>/sim/rendering/rembrandt/cinema/vignette</property>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</or>
<equal>
<value type="float">0.0</value>
<float-property>/sim/rendering/rembrandt/show-buffers</float-property>
</equal>
</and>
</predicate>
<pass>
<render-bin>
<bin-number>99999</bin-number>
<bin-name>RenderBin</bin-name>
</render-bin>
<texture-unit>
<unit>0</unit>
<type>buffer</type>
<name>lighting</name>
</texture-unit>
<texture-unit>
<unit>1</unit>
<type>buffer</type>
<name>bloom-3</name>
</texture-unit>
<program>
<vertex-shader>Shaders/fullscreen.vert</vertex-shader>
<fragment-shader>Shaders/cinema.frag</fragment-shader>
</program>
<uniform>
<name>lighting_tex</name>
<type>sampler-2d</type>
<value type="int">0</value>
</uniform>
<uniform>
<name>bloom_tex</name>
<type>sampler-2d</type>
<value type="int">1</value>
</uniform>
<uniform>
<name>bloomEnabled</name>
<type>bool</type>
<value type="bool"><use>bloom</use></value>
</uniform>
<uniform>
<name>bloomStrength</name>
<type>float</type>
<value><use>bloom-strength</use></value>
</uniform>
<uniform>
<name>bloomBuffers</name>
<type>bool</type>
<value><use>bloom-buffers</use></value>
</uniform>
<uniform>
<name>vignette</name>
<type>bool</type>
<value><use>cinema/vignette</use></value>
</uniform>
<uniform>
<name>innerCircle</name>
<type>float</type>
<value><use>cinema/inner-circle</use></value>
</uniform>
<uniform>
<name>outerCircle</name>
<type>float</type>
<value><use>cinema/outer-circle</use></value>
</uniform>
<uniform>
<name>colorShift</name>
<type>bool</type>
<value><use>cinema/color-shift</use></value>
</uniform>
<uniform>
<name>redShift</name>
<type>float-vec3</type>
<value><use>cinema/red-shift</use></value>
</uniform>
<uniform>
<name>greenShift</name>
<type>float-vec3</type>
<value><use>cinema/green-shift</use></value>
</uniform>
<uniform>
<name>blueShift</name>
<type>float-vec3</type>
<value><use>cinema/blue-shift</use></value>
</uniform>
</pass>
</technique>
<technique n="10">
<predicate> <predicate>
<and> <and>
<property>/sim/rendering/rembrandt/night-vision</property> <property>/sim/rendering/rembrandt/night-vision</property>
@ -221,6 +136,145 @@
</uniform> </uniform>
</pass> </pass>
</technique> </technique>
<technique n="10">
<predicate>
<and>
<or>
<property>/sim/rendering/rembrandt/cinema/vignette</property>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
<property>/sim/rendering/rembrandt/cinema/distortion</property>
</or>
<equal>
<value type="float">0.0</value>
<float-property>/sim/rendering/rembrandt/show-buffers</float-property>
</equal>
</and>
</predicate>
<pass>
<render-bin>
<bin-number>99999</bin-number>
<bin-name>RenderBin</bin-name>
</render-bin>
<texture-unit>
<unit>0</unit>
<type>buffer</type>
<name>lighting</name>
</texture-unit>
<texture-unit>
<unit>1</unit>
<type>buffer</type>
<name>bloom-3</name>
</texture-unit>
<texture-unit>
<unit>2</unit>
<image><use>texture[1]/image</use></image>
<filter><use>texture[1]/filter</use></filter>
<wrap-s><use>texture[1]/wrap-s</use></wrap-s>
<wrap-t><use>texture[1]/wrap-t</use></wrap-t>
<internal-format><use>texture[1]/internal-format</use></internal-format>
</texture-unit>
<program>
<vertex-shader>Shaders/fullscreen.vert</vertex-shader>
<fragment-shader>Shaders/cinema.frag</fragment-shader>
</program>
<uniform>
<name>lighting_tex</name>
<type>sampler-2d</type>
<value type="int">0</value>
</uniform>
<uniform>
<name>bloom_tex</name>
<type>sampler-2d</type>
<value type="int">1</value>
</uniform>
<uniform>
<name>film_tex</name>
<type>sampler-2d</type>
<value type="int">2</value>
</uniform>
<uniform>
<name>bloomEnabled</name>
<type>bool</type>
<value type="bool"><use>bloom</use></value>
</uniform>
<uniform>
<name>bloomStrength</name>
<type>float</type>
<value><use>bloom-strength</use></value>
</uniform>
<uniform>
<name>bloomBuffers</name>
<type>bool</type>
<value><use>bloom-buffers</use></value>
</uniform>
<uniform>
<name>vignette</name>
<type>bool</type>
<value><use>cinema/vignette</use></value>
</uniform>
<uniform>
<name>innerCircle</name>
<type>float</type>
<value><use>cinema/inner-circle</use></value>
</uniform>
<uniform>
<name>outerCircle</name>
<type>float</type>
<value><use>cinema/outer-circle</use></value>
</uniform>
<uniform>
<name>colorShift</name>
<type>bool</type>
<value><use>cinema/color-shift</use></value>
</uniform>
<uniform>
<name>redShift</name>
<type>float-vec3</type>
<value><use>cinema/red-shift</use></value>
</uniform>
<uniform>
<name>greenShift</name>
<type>float-vec3</type>
<value><use>cinema/green-shift</use></value>
</uniform>
<uniform>
<name>blueShift</name>
<type>float-vec3</type>
<value><use>cinema/blue-shift</use></value>
</uniform>
<uniform>
<name>distortion</name>
<type>bool</type>
<value><use>cinema/distortion</use></value>
</uniform>
<uniform>
<name>distortionFactor</name>
<type>float-vec3</type>
<value><use>cinema/distortion-factor</use></value>
</uniform>
<uniform>
<name>colorFringe</name>
<type>bool</type>
<value><use>cinema/color-fringe</use></value>
</uniform>
<uniform>
<name>colorFringeFactor</name>
<type>float</type>
<value><use>cinema/color-fringe-factor</use></value>
</uniform>
<uniform>
<name>filmWear</name>
<type>bool</type>
<value><use>cinema/film-wear</use></value>
</uniform>
</pass>
</technique>
<technique n="11"> <technique n="11">
<pass> <pass>
<render-bin> <render-bin>

View file

@ -8,24 +8,7 @@
<g_sample_rad type="float">0.03</g_sample_rad> <g_sample_rad type="float">0.03</g_sample_rad>
<random_size type="float">800.0</random_size> <random_size type="float">800.0</random_size>
</parameters> </parameters>
<technique n="10"> <technique n="11">
<predicate>
<and>
<or>
<less-equal>
<value type="float">2.0</value>
<glversion/>
</less-equal>
<and>
<extension-supported>GL_ARB_shader_objects</extension-supported>
<extension-supported>GL_ARB_shading_language_100</extension-supported>
<extension-supported>GL_ARB_vertex_shader</extension-supported>
<extension-supported>GL_ARB_fragment_shader</extension-supported>
</and>
</or>
<extension-supported>GL_EXT_gpu_shader4</extension-supported>
</and>
</predicate>
<pass> <pass>
<texture-unit> <texture-unit>
<unit>0</unit> <unit>0</unit>
@ -98,77 +81,4 @@
</uniform> </uniform>
</pass> </pass>
</technique> </technique>
<technique n="11">
<pass>
<texture-unit>
<unit>0</unit>
<type>buffer</type>
<name>depth</name>
</texture-unit>
<texture-unit>
<unit>1</unit>
<type>buffer</type>
<name>normal</name>
</texture-unit>
<texture-unit>
<unit>2</unit>
<type>buffer</type>
<name>spec-emis</name>
</texture-unit>
<texture-unit>
<unit>3</unit>
<type>noise</type>
</texture-unit>
<program>
<vertex-shader>Shaders/ssao.vert</vertex-shader>
<fragment-shader>Shaders/ssao-ati.frag</fragment-shader>
<fragment-shader>Shaders/gbuffer-functions.frag</fragment-shader>
</program>
<uniform>
<name>depth_tex</name>
<type>sampler-2d</type>
<value type="int">0</value>
</uniform>
<uniform>
<name>normal_tex</name>
<type>sampler-2d</type>
<value type="int">1</value>
</uniform>
<uniform>
<name>spec_emis_tex</name>
<type>sampler-2d</type>
<value type="int">2</value>
</uniform>
<uniform>
<name>noise_tex</name>
<type>sampler-2d</type>
<value type="int">3</value>
</uniform>
<uniform>
<name>g_scale</name>
<type>float</type>
<value><use>g_scale</use></value>
</uniform>
<uniform>
<name>g_bias</name>
<type>float</type>
<value><use>g_bias</use></value>
</uniform>
<uniform>
<name>g_intensity</name>
<type>float</type>
<value><use>g_intensity</use></value>
</uniform>
<uniform>
<name>g_sample_rad</name>
<type>float</type>
<value><use>g_sample_rad</use></value>
</uniform>
<uniform>
<name>random_size</name>
<type>float</type>
<value><use>random_size</use></value>
</uniform>
</pass>
</technique>
</PropertyList> </PropertyList>

View file

@ -701,12 +701,34 @@ var Path = {
} }
}; };
# Image
# ==============================================================================
# Class for an image element on a canvas
#
var Image = {
new: func(parent, id)
{
var m = {
parents: [Image, Element.new(parent, "image", id, arg)]
};
m.color = _createColorNodes(m._node, "color");
m.sourceRect = m._node.getNode("source", 1);
return m;
},
setFile: func(file)
{
me.set("file", file);
}
};
# Element factories used by #Group elements to create children # Element factories used by #Group elements to create children
Group._element_factories = { Group._element_factories = {
"group": Group.new, "group": Group.new,
"map": Map.new, "map": Map.new,
"text": Text.new, "text": Text.new,
"path": Path.new "path": Path.new,
"image": Image.new
}; };
# Canvas # Canvas

View file

@ -1,5 +1,6 @@
uniform sampler2D lighting_tex; uniform sampler2D lighting_tex;
uniform sampler2D bloom_tex; uniform sampler2D bloom_tex;
uniform sampler2D film_tex;
uniform bool colorShift; uniform bool colorShift;
uniform vec3 redShift; uniform vec3 redShift;
@ -10,8 +11,16 @@ uniform bool vignette;
uniform float innerCircle; uniform float innerCircle;
uniform float outerCircle; uniform float outerCircle;
uniform bool distortion;
uniform vec3 distortionFactor;
uniform bool colorFringe;
uniform float colorFringeFactor;
uniform bool filmWear;
uniform vec2 fg_BufferSize; uniform vec2 fg_BufferSize;
// uniform float osg_SimulationTime; uniform float osg_SimulationTime;
// uniform float shutterFreq; // uniform float shutterFreq;
// uniform float shutterDuration; // uniform float shutterDuration;
@ -20,28 +29,66 @@ uniform float bloomStrength;
uniform bool bloomBuffers; uniform bool bloomBuffers;
void main() { void main() {
vec2 coords = gl_TexCoord[0].xy; vec2 c1 = gl_TexCoord[0].xy;
vec4 color = texture2D( lighting_tex, coords ); vec2 initialCoords = c1;
vec2 c2;
if (distortion) {
c1 = 2.0 * initialCoords - vec2(1.,1.);
c1 *= vec2( 1.0, fg_BufferSize.y / fg_BufferSize.x );
float r = length(c1);
c1 += c1 * dot(distortionFactor.xy, vec2(r*r, r*r*r*r));
c1 /= distortionFactor.z;
c1 *= vec2( 1.0, fg_BufferSize.x / fg_BufferSize.y );
c1 = c1 * .5 + .5;
if (colorFringe) {
c2 = 2.0 * initialCoords - vec2(1.,1.);
c2 *= vec2( 1.0, fg_BufferSize.y / fg_BufferSize.x );
r = length(c2);
c2 += c2 * dot(distortionFactor.xy*colorFringeFactor, vec2(r*r, r*r*r*r));
c2 /= distortionFactor.z;
c2 *= vec2( 1.0, fg_BufferSize.x / fg_BufferSize.y );
c2 = c2 * .5 + .5;
}
}
vec3 dirt = vec3(1.0);
if (filmWear) {
dirt = texture2D(film_tex, initialCoords*vec2( 1.0, fg_BufferSize.y / fg_BufferSize.x ) + vec2(0.0, osg_SimulationTime * 7.7)).rgb;
}
vec4 color = texture2D( lighting_tex, c1 );
if (bloomEnabled && bloomBuffers) if (bloomEnabled && bloomBuffers)
color = color + bloomStrength * texture2D( bloom_tex, coords ); color += bloomStrength * texture2D( bloom_tex, c1 );
if (distortion && colorFringe) {
color.g = texture2D( lighting_tex, c2 ).g;
if (bloomEnabled && bloomBuffers)
color.g += bloomStrength * texture2D( bloom_tex, c2 ).g;
}
if (colorShift) { if (colorShift) {
vec3 c2; vec3 col2;
c2.r = dot(color, redShift); col2.r = dot(color.rgb, redShift);
c2.g = dot(color, greenShift); col2.g = dot(color.rgb, greenShift);
c2.b = dot(color, blueShift); col2.b = dot(color.rgb, blueShift);
color.rgb = c2; color.rgb = col2;
} }
if (vignette) { if (vignette) {
vec2 c = 2.0 * coords - vec2(1.,1.); vec2 c = 2.0 * initialCoords - vec2(1.,1.);
c = c * vec2( 1.0, fg_BufferSize.y / fg_BufferSize.x ); c = c * vec2( 1.0, fg_BufferSize.y / fg_BufferSize.x );
float l = length(c); float l = length(c);
float f = smoothstep( innerCircle, innerCircle * outerCircle, l ); float f = smoothstep( innerCircle, innerCircle * outerCircle, l );
color.rgb = (1 - f) * color.rgb; color.rgb = (1.0 - f) * color.rgb;
} }
// if ((osg_FrameNumber % 6) == 0) // if ((osg_FrameNumber % 6) == 0)
// f = 1.0; // f = 1.0;
gl_FragColor = color; gl_FragColor = color * vec4(dirt, 1.0);
} }

View file

@ -1,63 +0,0 @@
#version 120
uniform sampler2D normal_tex;
uniform sampler2D depth_tex;
uniform sampler2D spec_emis_tex;
uniform sampler3D noise_tex;
uniform vec2 fg_BufferSize;
uniform vec3 fg_Planes;
uniform vec4 fg_du;
uniform vec4 fg_dv;
uniform float g_scale;
uniform float g_bias;
uniform float g_intensity;
uniform float g_sample_rad;
uniform float random_size;
uniform int osg_FrameNumber;
varying vec4 ray;
const vec2 v[4] = vec2[](vec2(1.0,0.0),vec2(-1.0,0.0),vec2(0.0,1.0),vec2(0.0,-1.0));
vec3 position( vec3 viewDir, vec2 coords, sampler2D depth_tex );
vec3 normal_decode(vec2 enc);
vec2 getRandom( in vec2 uv ) {
int level = osg_FrameNumber - ((osg_FrameNumber / 64) * 64);
return normalize( texture3D( noise_tex, vec3(uv*50.0, float(level) / 64.0) ).xy * 0.14 - 0.07 );
}
vec3 getPosition(in vec2 uv, in vec2 uv0, in vec4 ray0) {
vec2 duv = uv - uv0;
vec4 ray = ray0 + fg_du * duv.x + fg_dv * duv.y;
vec3 viewDir = normalize( ray.xyz );
return position(viewDir, uv, depth_tex);
}
float doAmbientOcclusion(in vec2 tcoord, in vec2 uv, in vec3 p, in vec3 cnorm, in vec4 ray) {
vec3 diff = getPosition(tcoord+uv,tcoord,ray)-p;
float d = length(diff);
vec3 v = diff / d;
d *= g_scale;
return max(0.0, dot( cnorm,v ) - g_bias) * (1.0/(1.0+d)) * g_intensity;
}
void main() {
vec2 coords = gl_TexCoord[0].xy;
float initialized = texture2D( spec_emis_tex, coords ).a;
if ( initialized < 0.1 )
discard;
vec3 normal = normal_decode(texture2D( normal_tex, coords ).rg);
vec3 viewDir = normalize(ray.xyz);
vec3 pos = position(viewDir, coords, depth_tex);
vec2 rand = getRandom(coords);
float ao = 0.0;
float rad = g_sample_rad;
int iterations = 4;
for (int j = 0; j < 1; ++j ) {
vec2 coord1 = reflect( v[j], rand ) * rad;
vec2 coord2 = vec2( coord1.x*0.707 - coord1.y*0.707, coord1.x*0.707 + coord1.y*0.707 );
ao += doAmbientOcclusion(coords,coord1*0.25,pos,normal,ray);
ao += doAmbientOcclusion(coords,coord2*0.5,pos,normal,ray);
ao += doAmbientOcclusion(coords,coord1*0.75,pos,normal,ray);
ao += doAmbientOcclusion(coords,coord2,pos,normal,ray);
}
ao /= 16.0;
gl_FragColor = vec4( vec3(1.0 - ao), 1.0 );
}

View file

@ -13,7 +13,7 @@ uniform float g_bias;
uniform float g_intensity; uniform float g_intensity;
uniform float g_sample_rad; uniform float g_sample_rad;
uniform float random_size; uniform float random_size;
uniform unsigned int osg_FrameNumber; uniform float osg_SimulationTime;
varying vec4 ray; varying vec4 ray;
@ -23,8 +23,8 @@ vec3 position( vec3 viewDir, vec2 coords, sampler2D depth_tex );
vec3 normal_decode(vec2 enc); vec3 normal_decode(vec2 enc);
vec2 getRandom( in vec2 uv ) { vec2 getRandom( in vec2 uv ) {
unsigned int level = osg_FrameNumber - ((osg_FrameNumber / 64U) * 64U); float level = osg_SimulationTime - float(int(osg_SimulationTime));
return normalize( texture3D( noise_tex, vec3(uv*50.0, float(level) / 64.0) ).xy * 0.14 - 0.07 ); return normalize( texture3D( noise_tex, vec3(uv*50.0, level) ).xy * 0.14 - 0.07 );
} }
vec3 getPosition(in vec2 uv, in vec2 uv0, in vec4 ray0) { vec3 getPosition(in vec2 uv, in vec2 uv0, in vec4 ray0) {
vec2 duv = uv - uv0; vec2 duv = uv - uv0;

BIN
Textures/film-dirt.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

View file

@ -195,7 +195,7 @@
</combo> </combo>
</group> </group>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<halign>right</halign> <halign>right</halign>
@ -234,7 +234,7 @@
<pref-width>222</pref-width> <pref-width>222</pref-width>
</empty> </empty>
</group> </group>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<halign>right</halign> <halign>right</halign>
@ -376,6 +376,24 @@
<hrule/> <hrule/>
<group>
<layout>hbox</layout>
<halign>left</halign>
<checkbox>
<halign>left</halign>
<label>Night vision</label>
<name>night-vision</name>
<property>/sim/rendering/rembrandt/night-vision</property>
<binding>
<command>dialog-apply</command>
<object-name>night-vision</object-name>
</binding>
</checkbox>
</group>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<halign>left</halign> <halign>left</halign>
@ -389,6 +407,9 @@
<command>dialog-apply</command> <command>dialog-apply</command>
<object-name>vignette</object-name> <object-name>vignette</object-name>
</binding> </binding>
<enable>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
</enable>
</checkbox> </checkbox>
<empty> <empty>
<pref-width>34</pref-width> <pref-width>34</pref-width>
@ -396,7 +417,10 @@
<text> <text>
<label>Inner circle</label> <label>Inner circle</label>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/vignette</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/vignette</property>
</and>
</enable> </enable>
</text> </text>
<slider> <slider>
@ -410,7 +434,10 @@
<object-name>inner-circle</object-name> <object-name>inner-circle</object-name>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/vignette</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/vignette</property>
</and>
</enable> </enable>
</slider> </slider>
<text> <text>
@ -419,7 +446,10 @@
<live>true</live> <live>true</live>
<property>/sim/rendering/rembrandt/cinema/inner-circle</property> <property>/sim/rendering/rembrandt/cinema/inner-circle</property>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/vignette</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/vignette</property>
</and>
</enable> </enable>
</text> </text>
</group> </group>
@ -431,7 +461,10 @@
<text> <text>
<label>Outer circle</label> <label>Outer circle</label>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/vignette</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/vignette</property>
</and>
</enable> </enable>
</text> </text>
<slider> <slider>
@ -445,7 +478,10 @@
<object-name>outer-circle</object-name> <object-name>outer-circle</object-name>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/vignette</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/vignette</property>
</and>
</enable> </enable>
</slider> </slider>
<text> <text>
@ -454,7 +490,10 @@
<live>true</live> <live>true</live>
<property>/sim/rendering/rembrandt/cinema/outer-circle</property> <property>/sim/rendering/rembrandt/cinema/outer-circle</property>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/vignette</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/vignette</property>
</and>
</enable> </enable>
</text> </text>
<empty> <empty>
@ -462,8 +501,6 @@
</empty> </empty>
</group> </group>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<halign>left</halign> <halign>left</halign>
@ -477,6 +514,9 @@
<command>dialog-apply</command> <command>dialog-apply</command>
<object-name>color-shift</object-name> <object-name>color-shift</object-name>
</binding> </binding>
<enable>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
</enable>
</checkbox> </checkbox>
<empty> <empty>
<pref-width>37</pref-width> <pref-width>37</pref-width>
@ -484,7 +524,10 @@
<text> <text>
<label>Red shift</label> <label>Red shift</label>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</text> </text>
<slider> <slider>
@ -498,7 +541,10 @@
<object-name>red-shift-r</object-name> <object-name>red-shift-r</object-name>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</slider> </slider>
<text> <text>
@ -507,7 +553,10 @@
<live>true</live> <live>true</live>
<property>/sim/rendering/rembrandt/cinema/red-shift/x</property> <property>/sim/rendering/rembrandt/cinema/red-shift/x</property>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</text> </text>
<slider> <slider>
@ -521,7 +570,10 @@
<object-name>red-shift-g</object-name> <object-name>red-shift-g</object-name>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</slider> </slider>
<text> <text>
@ -530,7 +582,10 @@
<live>true</live> <live>true</live>
<property>/sim/rendering/rembrandt/cinema/red-shift/y</property> <property>/sim/rendering/rembrandt/cinema/red-shift/y</property>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</text> </text>
<slider> <slider>
@ -544,7 +599,10 @@
<object-name>red-shift-b</object-name> <object-name>red-shift-b</object-name>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</slider> </slider>
<text> <text>
@ -553,7 +611,10 @@
<live>true</live> <live>true</live>
<property>/sim/rendering/rembrandt/cinema/red-shift/z</property> <property>/sim/rendering/rembrandt/cinema/red-shift/z</property>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</text> </text>
</group> </group>
@ -565,7 +626,10 @@
<text> <text>
<label>Green shift</label> <label>Green shift</label>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</text> </text>
<slider> <slider>
@ -579,7 +643,10 @@
<object-name>green-shift-r</object-name> <object-name>green-shift-r</object-name>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</slider> </slider>
<text> <text>
@ -588,7 +655,10 @@
<live>true</live> <live>true</live>
<property>/sim/rendering/rembrandt/cinema/green-shift/x</property> <property>/sim/rendering/rembrandt/cinema/green-shift/x</property>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</text> </text>
<slider> <slider>
@ -602,7 +672,10 @@
<object-name>green-shift-g</object-name> <object-name>green-shift-g</object-name>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</slider> </slider>
<text> <text>
@ -611,7 +684,10 @@
<live>true</live> <live>true</live>
<property>/sim/rendering/rembrandt/cinema/green-shift/y</property> <property>/sim/rendering/rembrandt/cinema/green-shift/y</property>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</text> </text>
<slider> <slider>
@ -625,7 +701,10 @@
<object-name>green-shift-b</object-name> <object-name>green-shift-b</object-name>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</slider> </slider>
<text> <text>
@ -634,7 +713,10 @@
<live>true</live> <live>true</live>
<property>/sim/rendering/rembrandt/cinema/green-shift/z</property> <property>/sim/rendering/rembrandt/cinema/green-shift/z</property>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</text> </text>
</group> </group>
@ -646,7 +728,10 @@
<text> <text>
<label>Blue shift</label> <label>Blue shift</label>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</text> </text>
<slider> <slider>
@ -660,7 +745,10 @@
<object-name>blue-shift-r</object-name> <object-name>blue-shift-r</object-name>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</slider> </slider>
<text> <text>
@ -669,7 +757,10 @@
<live>true</live> <live>true</live>
<property>/sim/rendering/rembrandt/cinema/blue-shift/x</property> <property>/sim/rendering/rembrandt/cinema/blue-shift/x</property>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</text> </text>
<slider> <slider>
@ -683,7 +774,10 @@
<object-name>blue-shift-g</object-name> <object-name>blue-shift-g</object-name>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</slider> </slider>
<text> <text>
@ -692,7 +786,10 @@
<live>true</live> <live>true</live>
<property>/sim/rendering/rembrandt/cinema/blue-shift/y</property> <property>/sim/rendering/rembrandt/cinema/blue-shift/y</property>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</text> </text>
<slider> <slider>
@ -706,7 +803,10 @@
<object-name>blue-shift-b</object-name> <object-name>blue-shift-b</object-name>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</slider> </slider>
<text> <text>
@ -715,33 +815,219 @@
<live>true</live> <live>true</live>
<property>/sim/rendering/rembrandt/cinema/blue-shift/z</property> <property>/sim/rendering/rembrandt/cinema/blue-shift/z</property>
<enable> <enable>
<property>/sim/rendering/rembrandt/cinema/color-shift</property> <and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</and>
</enable> </enable>
</text> </text>
</group> </group>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<halign>left</halign> <halign>left</halign>
<checkbox> <checkbox>
<halign>left</halign> <halign>left</halign>
<label>Night vision</label> <label>Distortion</label>
<name>night-vision</name> <name>distortion</name>
<property>/sim/rendering/rembrandt/night-vision</property> <property>/sim/rendering/rembrandt/cinema/distortion</property>
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
<object-name>night-vision</object-name> <object-name>distortion</object-name>
</binding> </binding>
<enable> <enable>
<not> <not><property>/sim/rendering/rembrandt/night-vision</property></not>
</enable>
</checkbox>
<empty>
<pref-width>48</pref-width>
</empty>
<text>
<label>Factors</label>
<enable>
<and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/distortion</property>
</and>
</enable>
</text>
<slider>
<name>distortion-factor-x</name>
<min>-0.5</min>
<max>0.5</max>
<step>0.01</step>
<property>/sim/rendering/rembrandt/cinema/distortion-factor/x</property>
<binding>
<command>dialog-apply</command>
<object-name>distortion-factor-x</object-name>
</binding>
<enable>
<and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/distortion</property>
</and>
</enable>
</slider>
<text>
<label>1234</label>
<format>%.2f</format>
<live>true</live>
<property>/sim/rendering/rembrandt/cinema/distortion-factor/x</property>
<enable>
<and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/distortion</property>
</and>
</enable>
</text>
<slider>
<name>distortion-factor-y</name>
<min>-0.5</min>
<max>0.5</max>
<step>0.01</step>
<property>/sim/rendering/rembrandt/cinema/distortion-factor/y</property>
<binding>
<command>dialog-apply</command>
<object-name>distortion-factor-y</object-name>
</binding>
<enable>
<and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/distortion</property>
</and>
</enable>
</slider>
<text>
<label>1234</label>
<format>%.2f</format>
<live>true</live>
<property>/sim/rendering/rembrandt/cinema/distortion-factor/y</property>
<enable>
<and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/distortion</property>
</and>
</enable>
</text>
<slider>
<name>distortion-factor-z</name>
<min>0.5</min>
<max>1.5</max>
<step>0.001</step>
<property>/sim/rendering/rembrandt/cinema/distortion-factor/z</property>
<binding>
<command>dialog-apply</command>
<object-name>distortion-factor-z</object-name>
</binding>
<enable>
<and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/distortion</property>
</and>
</enable>
</slider>
<text>
<label>1234</label>
<format>%.2f</format>
<live>true</live>
<property>/sim/rendering/rembrandt/cinema/distortion-factor/z</property>
<enable>
<and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/distortion</property>
</and>
</enable>
</text>
</group>
<group>
<layout>hbox</layout>
<halign>left</halign>
<checkbox>
<halign>left</halign>
<label>Color fringe</label>
<name>color-fringe</name>
<property>/sim/rendering/rembrandt/cinema/color-fringe</property>
<binding>
<command>dialog-apply</command>
<object-name>color-fringe</object-name>
</binding>
<enable>
<and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/distortion</property>
</and>
</enable>
</checkbox>
<empty>
<pref-width>42</pref-width>
</empty>
<text>
<label>Factor</label>
<enable>
<and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/distortion</property>
<property>/sim/rendering/rembrandt/cinema/color-fringe</property>
</and>
</enable>
</text>
<slider>
<name>color-fringe-factor</name>
<min>0.96</min>
<max>1.04</max>
<step>0.001</step>
<property>/sim/rendering/rembrandt/cinema/color-fringe-factor</property>
<binding>
<command>dialog-apply</command>
<object-name>color-fringe-factor</object-name>
</binding>
<enable>
<and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/distortion</property>
<property>/sim/rendering/rembrandt/cinema/color-fringe</property>
</and>
</enable>
</slider>
<text>
<label>12345678</label>
<format>%.3f</format>
<live>true</live>
<property>/sim/rendering/rembrandt/cinema/color-fringe-factor</property>
<enable>
<and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<property>/sim/rendering/rembrandt/cinema/distortion</property>
<property>/sim/rendering/rembrandt/cinema/color-fringe</property>
</and>
</enable>
</text>
</group>
<group>
<layout>hbox</layout>
<halign>left</halign>
<checkbox>
<halign>left</halign>
<label>Film wear</label>
<name>film-wear</name>
<property>/sim/rendering/rembrandt/cinema/film-wear</property>
<binding>
<command>dialog-apply</command>
<object-name>film-wear</object-name>
</binding>
<enable>
<and>
<not><property>/sim/rendering/rembrandt/night-vision</property></not>
<or> <or>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
<property>/sim/rendering/rembrandt/cinema/vignette</property> <property>/sim/rendering/rembrandt/cinema/vignette</property>
<property>/sim/rendering/rembrandt/cinema/color-shift</property>
</or> </or>
</not> </and>
</enable> </enable>
</checkbox> </checkbox>
</group> </group>

View file

@ -93,6 +93,15 @@ Started September 2000 by David Megginson, david@megginson.com
<y type="float" userarchive="y">.534</y> <y type="float" userarchive="y">.534</y>
<z type="float" userarchive="y">.131</z> <z type="float" userarchive="y">.131</z>
</blue-shift> </blue-shift>
<distortion type="bool">false</distortion>
<distortion-factor>
<x type="float" userarchive="y">0.0</x>
<y type="float" userarchive="y">0.0</y>
<z type="float" userarchive="y">1.0</z>
</distortion-factor>
<color-fringe type="bool">false</color-fringe>
<color-fringe-factor type="float" userarchive="y">1.0</color-fringe-factor>
<film-wear type="bool">false</film-wear>
</cinema> </cinema>
<exposure type="float" userarchive="y">1.0</exposure> <exposure type="float" userarchive="y">1.0</exposure>
<use-color-for-depth type="bool">false</use-color-for-depth> <use-color-for-depth type="bool">false</use-color-for-depth>