.. | .. |
---|
1819 | 1819 | |
---|
1820 | 1820 | display.modelParams7[0] = 0; |
---|
1821 | 1821 | display.modelParams7[1] = 1000; |
---|
1822 | | - display.modelParams7[2] = 0; |
---|
| 1822 | + display.modelParams7[2] = material.parallax; |
---|
1823 | 1823 | display.modelParams7[3] = 0; |
---|
1824 | 1824 | |
---|
1825 | 1825 | //display.modelParams6[0] = 100; // criss de bug de bump |
---|
.. | .. |
---|
12593 | 12593 | "PARAM params4 = program.env[4];" + // anisoV, cameralight, selfshadow, shadow |
---|
12594 | 12594 | "PARAM params5 = program.env[5];" + // texture, opacity, fakedepth, shadowbias |
---|
12595 | 12595 | "PARAM params6 = program.env[6];" + // bump, noise, borderfade, fog punchthrough |
---|
12596 | | - "PARAM params7 = program.env[7];" + // noise power, opacity power |
---|
| 12596 | + "PARAM params7 = program.env[7];" + // noise power, opacity power, parallax |
---|
12597 | 12597 | "PARAM options0 = program.env[63];" + // fog density, intensity, elevation |
---|
12598 | 12598 | "PARAM options1 = program.env[62];" + // fog rgb color |
---|
12599 | 12599 | "PARAM options2 = program.env[61];" + // image intensity, subsurface, lightsheen |
---|
.. | .. |
---|
12838 | 12838 | "POW texSamp.a, texSamp.a, params6.w;" + // fog punch through shortcut |
---|
12839 | 12839 | // mar 2013 ??? "KIL alpha.a;" + |
---|
12840 | 12840 | "MOV alpha, texSamp.aaaa;" + // y;" + |
---|
12841 | | - "KIL alpha.a;" + |
---|
| 12841 | + "KIL alpha.a;" + // not sure with parallax mapping |
---|
12842 | 12842 | /* |
---|
12843 | 12843 | "MUL temp.xy, temp, two;" + |
---|
12844 | 12844 | "TXB bump, temp, texture[0], 2D;" + |
---|
.. | .. |
---|
12924 | 12924 | "SUB bump0, bump0, half;" + |
---|
12925 | 12925 | "ADD bump, bump, bump0;" + |
---|
12926 | 12926 | |
---|
12927 | | - "MOV temp.x, texSamp.a;" + |
---|
12928 | | - "LRP texSamp, params5.x, texSamp, one;" + // texture proportion |
---|
12929 | | - //"LRP texSamp0, params5.x, texSamp0, one;" + |
---|
12930 | | - "MOV texSamp.a, temp.x;" + |
---|
12931 | | - |
---|
12932 | 12927 | // double-sided |
---|
12933 | 12928 | /**/ |
---|
12934 | 12929 | (doublesided?"DP3 temp.z, normal, eye;" + |
---|
.. | .. |
---|
12958 | 12953 | Normalize("U") + |
---|
12959 | 12954 | |
---|
12960 | 12955 | // parallax mapping |
---|
| 12956 | + |
---|
| 12957 | + "DP3 temp2.x, V, eye;" + |
---|
| 12958 | + "DP3 temp2.y, U, eye;" + |
---|
| 12959 | + "DP3 temp2.z, normal, eye;" + |
---|
| 12960 | + "RCP temp2.z, temp2.z;" + |
---|
| 12961 | + |
---|
| 12962 | + "DP3 temp2.w, texSamp, texSamp;" + // Height |
---|
| 12963 | + "RSQ temp2.w, temp2.w;" + |
---|
| 12964 | + "RCP temp2.w, temp2.w;" + |
---|
| 12965 | + |
---|
| 12966 | + "SUB temp2.w, temp2.w, half;" + |
---|
| 12967 | +// "SGE temp.x, temp2.w, eps.x;" + |
---|
| 12968 | +// "MUL temp2.w, temp2.w, temp.x;" + |
---|
| 12969 | + |
---|
| 12970 | + //"MOV texSamp, U;" + |
---|
| 12971 | + |
---|
| 12972 | + "MUL temp2.z, temp2.z, temp2.w;" + |
---|
| 12973 | + "MUL temp2.z, temp2.z, params7.z;" + // parallax |
---|
| 12974 | + |
---|
| 12975 | + "MUL temp2, temp2, temp2.z;" + |
---|
| 12976 | + |
---|
| 12977 | + "MOV temp, fragment.texcoord[0];" + |
---|
| 12978 | + |
---|
| 12979 | + "SUB temp, temp, temp2;" + |
---|
| 12980 | + |
---|
| 12981 | + "TEX texSamp, temp, texture[0], 2D;" + |
---|
| 12982 | + "POW texSamp.a, texSamp.a, params6.w;" + // punch through |
---|
| 12983 | + "MOV alpha, texSamp.aaaa;" + |
---|
| 12984 | + |
---|
| 12985 | +// parallax mapping |
---|
| 12986 | + |
---|
| 12987 | + "MOV temp.x, texSamp.a;" + |
---|
| 12988 | + "LRP texSamp, params5.x, texSamp, one;" + // texture proportion |
---|
| 12989 | + //"LRP texSamp0, params5.x, texSamp0, one;" + |
---|
| 12990 | + "MOV texSamp.a, temp.x;" + |
---|
12961 | 12991 | |
---|
12962 | 12992 | //"MOV temp, fragment.texcoord[0];" + |
---|
12963 | 12993 | // |
---|
.. | .. |
---|
13739 | 13769 | /*static*/ float[] modelParams4 = new float[]{0, 0, 0, 0}; // anisoV, cameralight, selfshadow, shadow |
---|
13740 | 13770 | /*static*/ float[] modelParams5 = new float[]{0, 0, 0, 0}; // texture, opacity, fakedepth, shadowbias |
---|
13741 | 13771 | /*static*/ float[] modelParams6 = new float[]{0, 0, 0, 0}; // bump, noise, borderfade, fog punchthrough |
---|
13742 | | - /*static*/ float[] modelParams7 = new float[]{0, 0, 0, 0}; // noise power, opacity power |
---|
| 13772 | + /*static*/ float[] modelParams7 = new float[]{0, 0, 0, 0}; // noise power, opacity power, parallax |
---|
13743 | 13773 | |
---|
13744 | 13774 | //Object3D.cVector2[] vector2buffer; |
---|
13745 | 13775 | |
---|