==17908== Memcheck, a memory error detector ==17908== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al. ==17908== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info ==17908== Command: /home/spark/gritengine/grit_core/linux//Grit.linux.x86 ==17908== --17908-- WARNING: Serious error when reading debug info --17908-- When reading debug info from /usr/lib/libGL.so.295.59: --17908-- Can't make sense of .got.plt section mapping --17908-- WARNING: Serious error when reading debug info --17908-- When reading debug info from /usr/lib/libnvidia-glcore.so.295.59: --17908-- Can't make sense of .got section mapping Creating resource group General Creating resource group Internal Creating resource group Autodetect SceneManagerFactory for type 'DefaultSceneManager' registered. Registering ResourceManager for type Material Registering ResourceManager for type Mesh Registering ResourceManager for type Skeleton MovableObjectFactory for type 'ParticleSystem' registered. OverlayElementFactory for type Panel registered. OverlayElementFactory for type BorderPanel registered. OverlayElementFactory for type TextArea registered. Registering ResourceManager for type Font ArchiveFactory for archive type FileSystem registered. ArchiveFactory for archive type Zip registered. ArchiveFactory for archive type EmbeddedZip registered. DDS codec registering FreeImage version: 3.15.1 This program uses FreeImage, a free, open source image library supporting all common bitmap formats. See http://freeimage.sourceforge.net for details Supported formats: bmp,ico,jpg,jif,jpeg,jpe,jng,koa,iff,lbm,mng,pbm,pbm,pcd,pcx,pgm,pgm,png,ppm,ppm,ras,tga,targa,tif,tiff,wap,wbmp,wbm,psd,cut,xbm,xpm,gif,hdr,g3,sgi,exr,j2k,j2c,jp2,pfm,pct,pict,pic,3fr,arw,bay,bmq,cap,cine,cr2,crw,cs1,dc2,dcr,drf,dsc,dng,erf,fff,ia,iiq,k25,kc2,kdc,mdc,mef,mos,mrw,nef,nrw,orf,pef,ptx,pxn,qtk,raf,raw,rdc,rw2,rwl,rwz,sr2,srf,sti PVRTC codec registering ETC1 codec registering Registering ResourceManager for type HighLevelGpuProgram Registering ResourceManager for type Compositor MovableObjectFactory for type 'Entity' registered. MovableObjectFactory for type 'Light' registered. MovableObjectFactory for type 'BillboardSet' registered. MovableObjectFactory for type 'ManualObject' registered. MovableObjectFactory for type 'BillboardChain' registered. MovableObjectFactory for type 'RibbonTrail' registered. *-*-* OGRE Initialising *-*-* Version 1.9.0unstable (Ghadamon) Installing plugin: GL RenderSystem OpenGL Rendering Subsystem created. Plugin successfully installed Installing plugin: Octree Scene Manager Plugin successfully installed Installing plugin: Cg Program Manager Plugin successfully installed CPU Identifier & Features ------------------------- * CPU ID: GenuineIntel: Intel(R) Core(TM)2 CPU 6600 @ 2.40GHz * SSE: yes * SSE2: yes * SSE3: yes * MMX: yes * MMXEXT: yes * 3DNOW: no * 3DNOWEXT: no * CMOV: yes * TSC: yes * FPU: yes * PRO: yes * HT: no ------------------------- ****************************** *** Starting GLX Subsystem *** ****************************** Registering ResourceManager for type Texture GLRenderSystem::_createRenderWindow "Grit Game Window", 1920x1200 windowed miscParams: FSAA=0 displayFrequency=50 Hz gamma=No vsync=Yes  GLXWindow::create used FBConfigID = 261 GL_VERSION = 3.3.0 NVIDIA 295.59 GL_VENDOR = NVIDIA Corporation GL_RENDERER = Quadro FX 3700M/PCIe/SSE2 GL_EXTENSIONS = GL_ARB_base_instance GL_ARB_blend_func_extended GL_ARB_color_buffer_float GL_ARB_compatibility GL_ARB_compressed_texture_pixel_storage GL_ARB_conservative_depth GL_ARB_copy_buffer GL_ARB_depth_buffer_float GL_ARB_depth_clamp GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_draw_elements_base_vertex GL_ARB_draw_instanced GL_ARB_ES2_compatibility GL_ARB_explicit_attrib_location GL_ARB_fragment_coord_conventions GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_framebuffer_object GL_ARB_framebuffer_sRGB GL_ARB_geometry_shader4 GL_ARB_get_program_binary GL_ARB_half_float_pixel GL_ARB_half_float_vertex GL_ARB_imaging GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_map_buffer_alignment GL_ARB_map_buffer_range GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_occlusion_query2 GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_provoking_vertex GL_ARB_robustness GL_ARB_sampler_objects GL_ARB_seamless_cube_map GL_ARB_separate_shader_objects GL_ARB_shader_bit_encoding GL_ARB_shader_objects GL_ARB_shading_language_100 GL_ARB_shading_language_420pack GL_ARB_shading_language_include GL_ARB_shading_language_packing GL_ARB_shadow GL_ARB_sync GL_ARB_texture_border_clamp GL_ARB_texture_buffer_object GL_ARB_texture_compression GL_ARB_texture_compression_rgtc GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_float GL_ARB_texture_mirrored_repeat GL_ARB_texture_multisample GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle GL_ARB_texture_rg GL_ARB_texture_rgb10_a2ui GL_ARB_texture_storage GL_ARB_texture_swizzle GL_ARB_timer_query GL_ARB_transpose_matrix GL_ARB_uniform_buffer_object GL_ARB_vertex_array_bgra GL_ARB_vertex_array_object GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_viewport_array GL_ARB_window_pos GL_ATI_draw_buffers GL_ATI_texture_float GL_ATI_texture_mirror_once GL_S3_s3tc GL_EXT_texture_env_add GL_EXT_abgr GL_EXT_bgra GL_EXT_bindable_uniform GL_EXT_blend_color GL_EXT_blend_equation_separate GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_compiled_vertex_array GL_EXT_Cg_shader GL_EXT_depth_bounds_test GL_EXT_direct_state_access GL_EXT_draw_buffers2 GL_EXT_draw_instanced GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXTX_framebuffer_mixed_formats GL_EXT_framebuffer_object GL_EXT_framebuffer_sRGB GL_EXT_geometry_shader4 GL_EXT_gpu_program_parameters GL_EXT_gpu_shader4 GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil GL_EXT_packed_float GL_EXT_packed_pixels GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_provoking_vertex GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_shader_objects GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_stencil_two_side GL_EXT_stencil_wrap GL_EXT_texture3D GL_EXT_texture_array GL_EXT_texture_buffer_object GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_latc GL_EXT_texture_compression_rgtc GL_EXT_texture_compression_s3tc GL_EXT_texture_cube_map GL_EXT_texture_edge_clamp GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_integer GL_EXT_texture_lod GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_shared_exponent GL_EXT_texture_sRGB GL_EXT_texture_sRGB_decode GL_EXT_texture_storage GL_EXT_texture_swizzle GL_EXT_texture_type_2_10_10_10_REV GL_EXT_timer_query GL_EXT_vertex_array GL_EXT_vertex_array_bgra GL_EXT_x11_sync_object GL_EXT_import_sync_object GL_IBM_rasterpos_clip GL_IBM_texture_mirrored_repeat GL_KTX_buffer_region GL_NV_alpha_test GL_NV_blend_minmax GL_NV_blend_square GL_NV_complex_primitives GL_NV_conditional_render GL_NV_copy_depth_to_color GL_NV_copy_image GL_NV_depth_buffer_float GL_NV_depth_clamp GL_NV_explicit_multisample GL_NV_fbo_color_attachments GL_NV_fence GL_NV_float_buffer GL_NV_fog_distance GL_NV_fragdepth GL_NV_fragment_program GL_NV_fragment_program_option GL_NV_fragment_program2 GL_NV_framebuffer_multisample_coverage GL_NV_geometry_shader4 GL_NV_gpu_program4 GL_NV_half_float GL_NV_light_max_exponent GL_NV_multisample_coverage GL_NV_multisample_filter_hint GL_NV_occlusion_query GL_NV_packed_depth_stencil GL_NV_parameter_buffer_object GL_NV_parameter_buffer_object2 GL_NV_path_rendering GL_NV_pixel_data_range GL_NV_point_sprite GL_NV_primitive_restart GL_NV_register_combiners GL_NV_register_combiners2 GL_NV_shader_buffer_load GL_NV_texgen_reflection GL_NV_texture_barrier GL_NV_texture_compression_vtc GL_NV_texture_env_combine4 GL_NV_texture_expand_normal GL_NV_texture_lod_clamp GL_NV_texture_multisample GL_NV_texture_rectangle GL_NV_texture_shader GL_NV_texture_shader2 GL_NV_texture_shader3 GL_NV_transform_feedback GL_NV_vdpau_interop GL_NV_vertex_array_range GL_NV_vertex_array_range2 GL_NV_vertex_buffer_unified_memory GL_NV_vertex_program GL_NV_vertex_program1_1 GL_NV_vertex_program2 GL_NV_vertex_program2_option GL_NV_vertex_program3 GL_NVX_conditional_render GL_NVX_gpu_memory_info GL_OES_depth24 GL_OES_depth32 GL_OES_depth_texture GL_OES_element_index_uint GL_OES_fbo_render_mipmap GL_OES_get_program_binary GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_texture_3D GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_array_object GL_OES_vertex_half_float GL_SGIS_generate_mipmap GL_SGIS_texture_lod GL_SGIX_depth_texture GL_SGIX_shadow GL_SUN_slice_accum  Supported GLX extensions: GLX_EXT_visual_info GLX_EXT_visual_rating GLX_SGIX_fbconfig GLX_SGIX_pbuffer GLX_SGI_video_sync GLX_SGI_swap_control GLX_EXT_swap_control GLX_EXT_texture_from_pixmap GLX_ARB_create_context GLX_ARB_create_context_profile GLX_EXT_create_context_es2_profile GLX_ARB_create_context_robustness GLX_ARB_multisample GLX_NV_float_buffer GLX_ARB_fbconfig_float GLX_NV_swap_group GLX_EXT_framebuffer_sRGB GLX_NV_multisample_coverage GLX_NV_copy_image GLX_NV_video_capture GLX_ARB_get_proc_address  *************************** *** GL Renderer Started *** *************************** Registering ResourceManager for type GpuProgram GLSL support detected GL: Using GL_EXT_framebuffer_object for rendering to textures (best) FBO PF_UNKNOWN depth/stencil support: D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_L8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_A8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_A4L4 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_BYTE_LA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_R5G6B5 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_B5G6R5 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_A4R4G4B4 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_A1R5G5B5 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_R8G8B8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_B8G8R8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_A8R8G8B8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_B8G8R8A8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_A2R10G10B10 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_A2B10G10R10 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_FLOAT16_RGB depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_FLOAT16_RGBA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_FLOAT32_RGB depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_FLOAT32_RGBA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_X8R8G8B8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_X8B8G8R8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_SHORT_RGBA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_R3G3B2 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_FLOAT16_R depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_FLOAT32_R depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_FLOAT16_GR depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_FLOAT32_GR depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  FBO PF_SHORT_RGB depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8  [GL] : Valid FBO targets PF_UNKNOWN PF_L8 PF_A8 PF_A4L4 PF_BYTE_LA PF_R5G6B5 PF_B5G6R5 PF_A4R4G4B4 PF_A1R5G5B5 PF_R8G8B8 PF_B8G8R8 PF_A8R8G8B8 PF_B8G8R8A8 PF_A2R10G10B10 PF_A2B10G10R10 PF_FLOAT16_RGB PF_FLOAT16_RGBA PF_FLOAT32_RGB PF_FLOAT32_RGBA PF_X8R8G8B8 PF_X8B8G8R8 PF_SHORT_RGBA PF_R3G3B2 PF_FLOAT16_R PF_FLOAT32_R PF_FLOAT16_GR PF_FLOAT32_GR PF_SHORT_RGB  RenderSystem capabilities ------------------------- RenderSystem Name: OpenGL Rendering Subsystem GPU Vendor: nvidia Device Name: Quadro FX 3700M/PCIe/SSE2 Driver Version: 3.3.0.0 * Fixed function pipeline: yes * Hardware generation of mipmaps: yes * Texture blending: yes * Anisotropic texture filtering: yes * Dot product texture operation: yes * Cube mapping: yes * Hardware stencil buffer: yes - Stencil depth: 8 - Two sided stencil support: yes - Wrap stencil values: yes * Hardware vertex / index buffers: yes * Vertex programs: yes * Number of floating-point constants for vertex programs: 1024 * Number of integer constants for vertex programs: 0 * Number of boolean constants for vertex programs: 0 * Fragment programs: yes * Number of floating-point constants for fragment programs: 512 * Number of integer constants for fragment programs: 0 * Number of boolean constants for fragment programs: 0 * Geometry programs: yes * Number of floating-point constants for geometry programs: 2048 * Number of integer constants for geometry programs: 0 * Number of boolean constants for geometry programs: 0 * Supported Shader Profiles: arbfp1 arbvp1 fp20 fp30 fp40 glsl gp4fp gp4gp gp4vp gpu_fp gpu_gp gpu_vp nvgp4 vp30 vp40 * Texture Compression: yes - DXT: yes - VTC: yes - PVRTC: no * Scissor Rectangle: yes * Hardware Occlusion Query: yes * User clip planes: yes * VET_UBYTE4 vertex element type: yes * Infinite far plane projection: yes * Hardware render-to-texture: yes * Floating point textures: yes * Non-power-of-two textures: yes * Volume textures: yes * Multiple Render Targets: 8 - With different bit depths: yes * Point Sprites: yes * Extended point parameters: yes * Max Point Size: 63.375 * Vertex texture fetch: yes * Number of world matrices: 0 * Number of texture units: 32 * Stencil buffer depth: 8 * Number of vertex blend matrices: 0 - Max vertex textures: 32 - Vertex textures shared: yes * Render to Vertex Buffer : yes * GL 1.5 without VBO workaround: no * Frame Buffer objects: yes * Frame Buffer objects (ARB extension): no * Frame Buffer objects (ATI extension): no * PBuffer support: yes * GL 1.5 without HW-occlusion workaround: no * Vertex Array Objects: no * Separate shader objects: no DefaultWorkQueue('Root') initialising on thread 0x7147f68. Particle Renderer Type 'billboard' registered DefaultWorkQueue('Root')::WorkerFunc - thread 0xab8f9e8 starting. DefaultWorkQueue('Root')::WorkerFunc - thread 0xab8fca8 starting. SceneManagerFactory for type 'OctreeSceneManager' registered. OverlayElementFactory for type TextList registered. MovableObjectFactory for type 'MovableClutter' registered. MovableObjectFactory for type 'RangedClutter' registered. Creating resource group GRIT Added resource location '.' of type 'FileSystem' to resource group 'GRIT' with recursive option Parsing scripts for resource group Autodetect Finished parsing scripts for resource group Autodetect Creating resources for group Autodetect All done Parsing scripts for resource group GRIT Parsing script system/AnaglyphCompositor.program Getting default parameters for system/red_cyan_desaturated Requested GpuProgramParameters for system/red_cyan_desaturated Requested GpuProgramParameters for system/red_cyan_desaturated Parsing script system/Core.program Getting default parameters for /system/ClearFatFB_v Requested GpuProgramParameters for /system/ClearFatFB_v Getting default parameters for /system/ClearFatFB_f Requested GpuProgramParameters for /system/ClearFatFB_f Requested GpuProgramParameters for /system/ClearFatFB_v Requested GpuProgramParameters for /system/ClearFatFB_f Requested GpuProgramParameters for /system/DoNothingCompositorV Requested GpuProgramParameters for /system/DoNothingCompositorF Compiler error: unknown error in system/Core.program(107): token "clear" is not recognized Parsing script system/Sky.material Getting default parameters for /system/SkyDefault_v Requested GpuProgramParameters for /system/SkyDefault_v Getting default parameters for /system/SkyProgram_v Requested GpuProgramParameters for /system/SkyProgram_v Getting default parameters for /system/SkyProgram_f Requested GpuProgramParameters for /system/SkyProgram_f Parsing script system/DebugTexture.material Parsing script system/PhysicsDebug.material Parsing script system/Overlays.material Finished parsing scripts for resource group GRIT Creating resources for group GRIT All done Parsing scripts for resource group General Finished parsing scripts for resource group General Creating resources for group General All done Parsing scripts for resource group Internal Finished parsing scripts for resource group Internal Creating resources for group Internal All done AL lib: pulseaudio.c:612: Context did not connect: Access denied ==17908== Syscall param semctl(IPC_SET, arg.buf) points to uninitialised byte(s) ==17908== at 0x4DF539F: semctl@@GLIBC_2.2 (semctl.c:109) ==17908== by 0x3E7: ??? ==17908== Address 0xbecd82a0 is on thread 1's stack ==17908== Initialising script... loading abbrev.lua loading hud.lua ==17908== Thread 5: ==17908== Source and destination overlap in memcpy(0xaa2aad0, 0xaa2aad0, 32768) ==17908== at 0x402E9A9: memcpy (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==17908== by 0xF6E3CC2: snd_pcm_area_copy (in /usr/lib/i386-linux-gnu/libasound.so.2.0.0) ==17908== by 0xF6E3F34: snd_pcm_areas_copy (in /usr/lib/i386-linux-gnu/libasound.so.2.0.0) ==17908== by 0xF72A9EE: ??? (in /usr/lib/i386-linux-gnu/libasound.so.2.0.0) ==17908== by 0xF72BB79: ??? (in /usr/lib/i386-linux-gnu/libasound.so.2.0.0) ==17908== by 0xD055E0F: ??? ==17908== Initialising misc.fixed font Added font misc.fixed Starting game engine... Loading ui.lua Loading gfx.lua Loading physics.lua Loading physical_materials.lua Loading procedural_objects.lua Loading procedural_batches.lua Loading console_prompt.lua Loading console.lua Loading player_ctrl.lua Loading capturer.lua Loading simplemenu.lua Reading user_menu.lua: success Reading user_menu_keybinds.lua Loading user configuration Reading user_cfg.lua Compiling shader: deferred_ambient_sun_v deferred_ambient_sun_f 1 Cg output for deferred_ambient_sun_v: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=0 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=0 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=1 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=1 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=0 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=0 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DSHADOW_MAPS=uniform sampler2D shadow_map1 : register(s4),uniform sampler2D shadow_map2 : register(s5),uniform sampler2D shadow_map3 : register(s6), -DFORWARD_PART=0 -DDEFERRED_AMBIENT_SUN_PART=1 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.quad_proj //semantic vp_main.top_left_ray //semantic vp_main.top_right_ray //semantic vp_main.bottom_left_ray //semantic vp_main.bottom_right_ray //var float4x4 quad_proj : : _quad_proj1[0], 4 : 1 : 1 //var float3 top_left_ray : : _top_left_ray1 : 2 : 1 //var float3 top_right_ray : : _top_right_ray1 : 3 : 1 //var float3 bottom_left_ray : : _bottom_left_ray1 : 4 : 1 //var float3 bottom_right_ray : : _bottom_right_ray1 : 5 : 1 //var float4 pos_ss : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 6 : 1 //var float3 ray_ : $vout.TEXCOORD1 : TEX1 : 7 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 8 : 1 vec4 _for_rasteriser1; vec3 _ray_1; vec2 _uv0_1; vec2 _TMP2; vec3 _TMP1; vec3 _TMP0; uniform vec4 _quad_proj1[4]; uniform vec3 _top_left_ray1; uniform vec3 _top_right_ray1; uniform vec3 _bottom_left_ray1; uniform vec3 _bottom_right_ray1; vec4 _r0009; vec2 _val0025; // main procedure, the original name was vp_main void main() { _r0009.x = dot(_quad_proj1[0], gl_Vertex); _r0009.y = dot(_quad_proj1[1], gl_Vertex); _r0009.z = dot(_quad_proj1[2], gl_Vertex); _r0009.w = dot(_quad_proj1[3], gl_Vertex); _for_rasteriser1 = _r0009; _uv0_1 = gl_Vertex.xy*vec2( 5.00000000E-01, -5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP0 = _top_left_ray1 + _uv0_1.x*(_top_right_ray1 - _top_left_ray1); _TMP1 = _bottom_left_ray1 + _uv0_1.x*(_bottom_right_ray1 - _bottom_left_ray1); _ray_1 = _TMP0 + _uv0_1.y*(_TMP1 - _TMP0); _val0025 = vec2(float((gl_Vertex.x > 0.00000000E+00)), float((gl_Vertex.y > 0.00000000E+00))); _TMP2 = _val0025 - vec2(float((gl_Vertex.x < 0.00000000E+00)), float((gl_Vertex.y < 0.00000000E+00))); _uv0_1 = _TMP2*vec2( 5.00000000E-01, -5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); gl_TexCoord[0].xy = _uv0_1; gl_TexCoord[1].xyz = _ray_1; gl_Position = _r0009; } // main end  Cleaned Cg output for deferred_ambient_sun_v: vec4 _for_rasteriser1; vec3 _ray_1; vec2 _uv0_1; vec2 _TMP2; vec3 _TMP1; vec3 _TMP0; uniform mat4 _quad_proj1; uniform vec3 _top_left_ray1; uniform vec3 _top_right_ray1; uniform vec3 _bottom_left_ray1; uniform vec3 _bottom_right_ray1; vec4 _r0009; vec2 _val0025; // main procedure, the original name was vp_main void main() { _r0009.x = dot(_quad_proj1[0], gl_Vertex); _r0009.y = dot(_quad_proj1[1], gl_Vertex); _r0009.z = dot(_quad_proj1[2], gl_Vertex); _r0009.w = dot(_quad_proj1[3], gl_Vertex); _for_rasteriser1 = _r0009; _uv0_1 = gl_Vertex.xy*vec2( 5.00000000E-01, -5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP0 = _top_left_ray1 + _uv0_1.x*(_top_right_ray1 - _top_left_ray1); _TMP1 = _bottom_left_ray1 + _uv0_1.x*(_bottom_right_ray1 - _bottom_left_ray1); _ray_1 = _TMP0 + _uv0_1.y*(_TMP1 - _TMP0); _val0025 = vec2(float((gl_Vertex.x > 0.00000000E+00)), float((gl_Vertex.y > 0.00000000E+00))); _TMP2 = _val0025 - vec2(float((gl_Vertex.x < 0.00000000E+00)), float((gl_Vertex.y < 0.00000000E+00))); _uv0_1 = _TMP2*vec2( 5.00000000E-01, -5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); gl_TexCoord[0].xy = _uv0_1; gl_TexCoord[1].xyz = _ray_1; gl_Position = _r0009; } // main end  Getting default parameters for deferred_ambient_sun_v Delegating... Replacing parameters... Replacing parameter names. replaced _bottom_left_ray1 with bottom_left_ray replaced _bottom_left_ray1[0] with bottom_left_ray[0] replaced _bottom_right_ray1 with bottom_right_ray replaced _bottom_right_ray1[0] with bottom_right_ray[0] replaced _quad_proj1 with quad_proj replaced _quad_proj1[0] with quad_proj[0] replaced _top_left_ray1 with top_left_ray replaced _top_left_ray1[0] with top_left_ray[0] replaced _top_right_ray1 with top_right_ray replaced _top_right_ray1[0] with top_right_ray[0] Getting default parameters for deferred_ambient_sun_v Delegating... Getting default parameters for deferred_ambient_sun_v Delegating... Getting default parameters for deferred_ambient_sun_v Delegating... Getting default parameters for deferred_ambient_sun_v Delegating... Cg output for deferred_ambient_sun_f: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=0 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=0 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=1 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=1 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=0 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=0 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DSHADOW_MAPS=uniform sampler2D shadow_map1 : register(s4),uniform sampler2D shadow_map2 : register(s5),uniform sampler2D shadow_map3 : register(s6), -DFORWARD_PART=0 -DDEFERRED_AMBIENT_SUN_PART=1 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.shadow_map1 : TEXUNIT4 //semantic fp_main.shadow_map2 : TEXUNIT5 //semantic fp_main.shadow_map3 : TEXUNIT6 //semantic fp_main.scene_ambient_colour //semantic fp_main.sun_diffuse //semantic fp_main.sun_specular //semantic fp_main.the_fog_params //semantic fp_main.the_fog_colour //semantic fp_main.misc //semantic fp_main.sun_pos_ws //semantic fp_main.shadow_view_proj1 //semantic fp_main.shadow_view_proj2 //semantic fp_main.shadow_view_proj3 //semantic fp_main.camera_pos_ws //semantic fp_main.far_clip_distance //semantic fp_main.near_clip_distance //semantic fp_main.view_proj //semantic fp_main.tex0 : TEXUNIT0 //semantic fp_main.tex1 : TEXUNIT1 //semantic fp_main.tex2 : TEXUNIT2 //semantic fp_main.tex3 : TEXUNIT3 //var sampler2D shadow_map1 : TEXUNIT4 : _shadow_map12 4 : 3 : 1 //var sampler2D shadow_map2 : TEXUNIT5 : _shadow_map22 5 : 4 : 1 //var sampler2D shadow_map3 : TEXUNIT6 : _shadow_map32 6 : 5 : 1 //var float3 scene_ambient_colour : : _scene_ambient_colour2 : 6 : 1 //var float3 sun_diffuse : : _sun_diffuse1 : 7 : 1 //var float3 sun_specular : : _sun_specular1 : 8 : 1 //var float4 the_fog_params : : _the_fog_params1 : 9 : 1 //var float3 the_fog_colour : : _the_fog_colour1 : 10 : 1 //var float3 misc : : _misc1 : 11 : 1 //var float4 sun_pos_ws : : _sun_pos_ws1 : 12 : 1 //var float4x4 shadow_view_proj1 : : _shadow_view_proj11[0], 4 : 13 : 1 //var float4x4 shadow_view_proj2 : : _shadow_view_proj21[0], 4 : 14 : 1 //var float4x4 shadow_view_proj3 : : _shadow_view_proj31[0], 4 : 15 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 16 : 1 //var float far_clip_distance : : _far_clip_distance1 : 17 : 1 //var float4x4 view_proj : : _view_proj1[0], 4 : 19 : 1 //var sampler2D tex0 : TEXUNIT0 : _tex01 0 : 20 : 1 //var sampler2D tex1 : TEXUNIT1 : _tex12 1 : 21 : 1 //var sampler2D tex2 : TEXUNIT2 : _tex22 2 : 22 : 1 //var sampler2D tex3 : TEXUNIT3 : _tex32 3 : 23 : 1 //var float2 uv : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float3 ray : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 wpos : $vin.WPOS : WPOS : 2 : 1 //var float4 pixel : $vout.COLOR0 : COL : 24 : 1 //var float depth : $vout.DEPTH : DEPR : 25 : 1 #extension GL_EXT_gpu_shader4 : enable vec4 _pixel1; float _depth1; float _TMP26; float _TMP25; float _TMP24; float _TMP29; float _TMP22; float _TMP20; float _TMP19; vec3 _TMP18; float _TMP32; float _TMP31; float _TMP30; float _TMP36; float _TMP27; float _TMP35; float _TMP6; vec3 _ray1; float _TMP11; float _TMP10; vec4 _TMP5; vec4 _TMP4; vec4 _TMP3; uniform sampler2D _shadow_map12; uniform sampler2D _shadow_map22; uniform sampler2D _shadow_map32; uniform vec3 _scene_ambient_colour2; uniform vec3 _sun_diffuse1; uniform vec3 _sun_specular1; uniform vec4 _the_fog_params1; uniform vec3 _the_fog_colour1; uniform vec3 _misc1; uniform vec4 _sun_pos_ws1; uniform vec4 _shadow_view_proj11[4]; uniform vec4 _shadow_view_proj21[4]; uniform vec4 _shadow_view_proj31[4]; uniform vec3 _camera_pos_ws1; uniform float _far_clip_distance1; uniform vec4 _view_proj1[4]; uniform sampler2D _tex01; uniform sampler2D _tex12; uniform sampler2D _tex22; uniform sampler2D _tex32; float _cam_dist0074; vec3 _normal_ws0074; vec3 _diff_colour0074; vec3 _spec_colour0074; float _gloss0074; vec3 _v0078; vec4 _r0100; vec4 _v0100; vec4 _r0110; vec4 _v0110; vec4 _r0120; vec4 _v0120; float _unshadowyness0130; float _shadowyness0130; float _fade0130; vec3 _ambient_component0130; float _sky_exposure0130; vec3 _sky_component0130; float _diff_exposure0130; float _flat_sun_exposure0130; vec3 _diff_component0130; float _spec_exposure0130; float _spec_illumination0130; float _rspec_illumination0130; vec3 _spec_component0130; vec3 _rspec_component0130; vec3 _pixel_colour0130; vec3 _pos_ls0138; float _our_dist0138; float _total0138; int _samples0138; int _filter_taps_side0138; float _half_filter_taps_side0138; vec2 _dithered_offset0138; vec2 _fragment_uv_offset0138; int _y10138; int _x10138; vec2 _tap_uv10138; float _TMP143; vec2 _uv0144; vec4 _TMP147; vec3 _pos_ls0158; float _our_dist0158; float _total0158; int _samples0158; int _filter_taps_side0158; float _half_filter_taps_side0158; vec2 _dithered_offset0158; vec2 _fragment_uv_offset0158; int _y10158; int _x10158; vec2 _tap_uv10158; float _TMP163; vec2 _uv0164; vec4 _TMP167; vec3 _pos_ls0178; float _our_dist0178; float _total0178; int _samples0178; int _filter_taps_side0178; float _half_filter_taps_side0178; vec2 _dithered_offset0178; vec2 _fragment_uv_offset0178; int _y10178; int _x10178; vec2 _tap_uv10178; float _TMP183; vec2 _uv0184; vec4 _TMP187; float _b0192; float _b0194; float _TMP197; float _TMP203; float _TMP231; float _x0232; float _b0238; float _y0240; float _clarity0242; float _TMP243; float _x0244; float _TMP247; vec3 _TMP255; vec4 _r0272; vec4 _v0272; // main procedure, the original name was fp_main void main() { vec4 _texel01; vec3 _pos_ws; float _cam_dist3; vec3 _camera_dir_ws1; float _sun_dist; _texel01 = texture2D(_tex01, gl_TexCoord[0].xy); _TMP3 = texture2D(_tex12, gl_TexCoord[0].xy); _TMP4 = texture2D(_tex22, gl_TexCoord[0].xy); _TMP5 = texture2D(_tex32, gl_TexCoord[0].xy); _cam_dist0074 = (2.55000000E+02*(6.55360000E+04*_texel01.x + 2.56000000E+02*_texel01.y + _texel01.z))/1.67772150E+07; _v0078 = _TMP3.xyz*vec3( 2.00000000E+00, 2.00000000E+00, 2.00000000E+00) - vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _TMP10 = dot(_v0078, _v0078); _TMP11 = inversesqrt(_TMP10); _normal_ws0074 = _TMP11*_v0078; _TMP24 = pow(_TMP4.x, 2.20000005E+00); _TMP25 = pow(_TMP4.y, 2.20000005E+00); _TMP26 = pow(_TMP4.z, 2.20000005E+00); _diff_colour0074 = vec3(_TMP24, _TMP25, _TMP26); _spec_colour0074 = _TMP5.xyz*2.00000000E+00; _gloss0074 = _TMP5.w*5.00000000E+01; if (_cam_dist0074 >= 1.00000000E+00) { // if begin discard; } // end if _pos_ws = _camera_pos_ws1 + _cam_dist0074*gl_TexCoord[1].xyz; _cam_dist3 = _cam_dist0074*_far_clip_distance1; _TMP10 = dot(gl_TexCoord[1].xyz, gl_TexCoord[1].xyz); _TMP11 = inversesqrt(_TMP10); _ray1 = _TMP11*gl_TexCoord[1].xyz; _camera_dir_ws1 = -_ray1; _TMP6 = dot(_pos_ws, _sun_pos_ws1.xyz); _sun_dist = -_TMP6; _v0100 = vec4(_pos_ws.x, _pos_ws.y, _pos_ws.z, 1.00000000E+00); _r0100.x = dot(_shadow_view_proj11[0], _v0100); _r0100.y = dot(_shadow_view_proj11[1], _v0100); _r0100.w = dot(_shadow_view_proj11[3], _v0100); _v0110 = vec4(_pos_ws.x, _pos_ws.y, _pos_ws.z, 1.00000000E+00); _r0110.x = dot(_shadow_view_proj21[0], _v0110); _r0110.y = dot(_shadow_view_proj21[1], _v0110); _r0110.w = dot(_shadow_view_proj21[3], _v0110); _v0120 = vec4(_pos_ws.x, _pos_ws.y, _pos_ws.z, 1.00000000E+00); _r0120.x = dot(_shadow_view_proj31[0], _v0120); _r0120.y = dot(_shadow_view_proj31[1], _v0120); _r0120.w = dot(_shadow_view_proj31[3], _v0120); _shadowyness0130 = 0.00000000E+00; if (_cam_dist3 < 1.40000000E+01) { // if begin _pos_ls0138.xy = _r0100.xy/_r0100.ww; _our_dist0138 = _sun_dist/5.00000000E+03; _total0138 = 0.00000000E+00; _samples0138 = 0; _TMP35 = inversesqrt(1.60000000E+01); _TMP27 = 1.00000000E+00/_TMP35; _filter_taps_side0138 = int(_TMP27); _half_filter_taps_side0138 = float((float(_filter_taps_side0138)/2.00000000E+00)); if (int(gl_FragCoord.x)%2 == 1) { // if begin if (int(gl_FragCoord.y)%2 == 1) { // if begin _dithered_offset0138 = vec2( 1.00000000E+00, 0.00000000E+00); } else { _dithered_offset0138 = vec2( -1.00000000E+00, 0.00000000E+00); } // end if } else { if (int(gl_FragCoord.y)%2 == 1) { // if begin _dithered_offset0138 = vec2( 0.00000000E+00, 1.00000000E+00); } else { _dithered_offset0138 = vec2( 0.00000000E+00, -1.00000000E+00); } // end if } // end if _fragment_uv_offset0138 = 6.00000024E-01*_dithered_offset0138; _fragment_uv_offset0138 = _fragment_uv_offset0138*vec2((8.00000000E+00/float(_filter_taps_side0138))/2.04800000E+03, (8.00000000E+00/float(_filter_taps_side0138))/2.04800000E+03); _y10138 = 0; for (; _y10138 < _filter_taps_side0138; _y10138 = _y10138 + 1) { // for begin _x10138 = 0; for (; _x10138 < _filter_taps_side0138; _x10138 = _x10138 + 1) { // for begin _tap_uv10138 = (vec2((float(_x10138) - _half_filter_taps_side0138) + 5.00000000E-01, (float(_y10138) - _half_filter_taps_side0138) + 5.00000000E-01)*8.00000000E+00)/2.04800000E+03; _tap_uv10138 = _tap_uv10138/vec2(_half_filter_taps_side0138, _half_filter_taps_side0138); _uv0144 = _pos_ls0138.xy + _fragment_uv_offset0138 + _tap_uv10138; _TMP147 = texture2DGrad(_shadow_map12, _uv0144, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_our_dist0138 > _TMP147.x) { // if begin _TMP36 = 1.00000000E+00; } else { _TMP36 = 0.00000000E+00; } // end if _TMP143 = float(_TMP36); _total0138 = _total0138 + _TMP143; _samples0138 = _samples0138 + 1; } // end for } // end for _shadowyness0130 = _total0138/float(_samples0138); } else { if (_cam_dist3 < 3.00000000E+01) { // if begin _pos_ls0158.xy = _r0110.xy/_r0110.ww; _our_dist0158 = _sun_dist/5.00000000E+03; _total0158 = 0.00000000E+00; _samples0158 = 0; _TMP35 = inversesqrt(1.60000000E+01); _TMP27 = 1.00000000E+00/_TMP35; _filter_taps_side0158 = int(_TMP27); _half_filter_taps_side0158 = float((float(_filter_taps_side0158)/2.00000000E+00)); if (int(gl_FragCoord.x)%2 == 1) { // if begin if (int(gl_FragCoord.y)%2 == 1) { // if begin _dithered_offset0158 = vec2( 1.00000000E+00, 0.00000000E+00); } else { _dithered_offset0158 = vec2( -1.00000000E+00, 0.00000000E+00); } // end if } else { if (int(gl_FragCoord.y)%2 == 1) { // if begin _dithered_offset0158 = vec2( 0.00000000E+00, 1.00000000E+00); } else { _dithered_offset0158 = vec2( 0.00000000E+00, -1.00000000E+00); } // end if } // end if _fragment_uv_offset0158 = 6.00000024E-01*_dithered_offset0158; _fragment_uv_offset0158 = _fragment_uv_offset0158*vec2((8.00000000E+00/float(_filter_taps_side0158))/2.04800000E+03, (8.00000000E+00/float(_filter_taps_side0158))/2.04800000E+03); _y10158 = 0; for (; _y10158 < _filter_taps_side0158; _y10158 = _y10158 + 1) { // for begin _x10158 = 0; for (; _x10158 < _filter_taps_side0158; _x10158 = _x10158 + 1) { // for begin _tap_uv10158 = (vec2((float(_x10158) - _half_filter_taps_side0158) + 5.00000000E-01, (float(_y10158) - _half_filter_taps_side0158) + 5.00000000E-01)*8.00000000E+00)/2.04800000E+03; _tap_uv10158 = _tap_uv10158/vec2(_half_filter_taps_side0158, _half_filter_taps_side0158); _uv0164 = _pos_ls0158.xy + _fragment_uv_offset0158 + _tap_uv10158; _TMP167 = texture2DGrad(_shadow_map22, _uv0164, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_our_dist0158 > _TMP167.x) { // if begin _TMP36 = 1.00000000E+00; } else { _TMP36 = 0.00000000E+00; } // end if _TMP163 = float(_TMP36); _total0158 = _total0158 + _TMP163; _samples0158 = _samples0158 + 1; } // end for } // end for _shadowyness0130 = _total0158/float(_samples0158); } else { if (_cam_dist3 < 5.00000000E+02) { // if begin _pos_ls0178.xy = _r0120.xy/_r0120.ww; _our_dist0178 = _sun_dist/5.00000000E+03; _total0178 = 0.00000000E+00; _samples0178 = 0; _TMP35 = inversesqrt(1.60000000E+01); _TMP27 = 1.00000000E+00/_TMP35; _filter_taps_side0178 = int(_TMP27); _half_filter_taps_side0178 = float((float(_filter_taps_side0178)/2.00000000E+00)); if (int(gl_FragCoord.x)%2 == 1) { // if begin if (int(gl_FragCoord.y)%2 == 1) { // if begin _dithered_offset0178 = vec2( 1.00000000E+00, 0.00000000E+00); } else { _dithered_offset0178 = vec2( -1.00000000E+00, 0.00000000E+00); } // end if } else { if (int(gl_FragCoord.y)%2 == 1) { // if begin _dithered_offset0178 = vec2( 0.00000000E+00, 1.00000000E+00); } else { _dithered_offset0178 = vec2( 0.00000000E+00, -1.00000000E+00); } // end if } // end if _fragment_uv_offset0178 = 6.00000024E-01*_dithered_offset0178; _fragment_uv_offset0178 = _fragment_uv_offset0178*vec2((2.24000001E+00/float(_filter_taps_side0178))/2.04800000E+03, (2.24000001E+00/float(_filter_taps_side0178))/2.04800000E+03); _y10178 = 0; for (; _y10178 < _filter_taps_side0178; _y10178 = _y10178 + 1) { // for begin _x10178 = 0; for (; _x10178 < _filter_taps_side0178; _x10178 = _x10178 + 1) { // for begin _tap_uv10178 = (vec2((float(_x10178) - _half_filter_taps_side0178) + 5.00000000E-01, (float(_y10178) - _half_filter_taps_side0178) + 5.00000000E-01)*2.24000001E+00)/2.04800000E+03; _tap_uv10178 = _tap_uv10178/vec2(_half_filter_taps_side0178, _half_filter_taps_side0178); _uv0184 = _pos_ls0178.xy + _fragment_uv_offset0178 + _tap_uv10178; _TMP187 = texture2DGrad(_shadow_map32, _uv0184, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_our_dist0178 > _TMP187.x) { // if begin _TMP36 = 1.00000000E+00; } else { _TMP36 = 0.00000000E+00; } // end if _TMP183 = float(_TMP36); _total0178 = _total0178 + _TMP183; _samples0178 = _samples0178 + 1; } // end for } // end for _shadowyness0130 = _total0178/float(_samples0178); } // end if } // end if } // end if _b0192 = (5.00000000E+02 - _cam_dist3)/0.00000000E+00; _fade0130 = min(1.00000000E+00, _b0192); _shadowyness0130 = _shadowyness0130*_fade0130; _shadowyness0130 = _shadowyness0130*_misc1.x; _b0194 = 1.00000000E+00 - _shadowyness0130; _unshadowyness0130 = max(0.00000000E+00, _b0194); _ambient_component0130 = _scene_ambient_colour2*_diff_colour0074; _sky_exposure0130 = dot(_normal_ws0074, vec3( 0.00000000E+00, 0.00000000E+00, 1.00000000E+00)); _TMP197 = max(0.00000000E+00, _sky_exposure0130); _sky_component0130 = (_diff_colour0074*_TMP197)*(_misc1.y*_scene_ambient_colour2); _diff_exposure0130 = dot(_sun_pos_ws1.xyz, _normal_ws0074); _TMP29 = min(_texel01.w, _diff_exposure0130); _TMP203 = max(0.00000000E+00, _TMP29); _flat_sun_exposure0130 = _diff_exposure0130 - _TMP203; _diff_exposure0130 = _diff_exposure0130 - _TMP203; _TMP30 = min(_unshadowyness0130, _diff_exposure0130); _TMP31 = max(_TMP30, 0.00000000E+00); _diff_component0130 = (_diff_colour0074*_TMP31)*_sun_diffuse1; _TMP32 = dot(_normal_ws0074, _sun_pos_ws1.xyz); _TMP18 = _sun_pos_ws1.xyz - (2.00000000E+00*_normal_ws0074)*_TMP32; _TMP19 = dot(_TMP18, _camera_dir_ws1); _spec_exposure0130 = -_TMP19; _TMP20 = max(1.00000001E-07, _spec_exposure0130); _spec_illumination0130 = pow(_TMP20, _gloss0074); _x0232 = 1.50000000E+00*_flat_sun_exposure0130; _TMP29 = min(1.00000000E+00, _x0232); _TMP231 = max(0.00000000E+00, _TMP29); _spec_illumination0130 = _spec_illumination0130*_TMP231; _spec_illumination0130 = _spec_illumination0130*_unshadowyness0130; _b0238 = -_spec_exposure0130; _TMP22 = max(1.00000001E-07, _b0238); _y0240 = _gloss0074/3.00000000E+00; _rspec_illumination0130 = pow(_TMP22, _y0240); _spec_component0130 = (_spec_colour0074*_spec_illumination0130)*_sun_specular1; _rspec_component0130 = ((5.00000007E-02*_spec_colour0074)*_rspec_illumination0130)*_sun_specular1; _pixel_colour0130 = _ambient_component0130 + _diff_component0130 + _sky_component0130 + _spec_component0130; _pixel_colour0130 = _pixel_colour0130 + _rspec_component0130; _clarity0242 = _the_fog_params1.x*_cam_dist3; _x0244 = -_clarity0242*_clarity0242; _TMP243 = pow(2.71828198E+00, _x0244); _TMP29 = min(1.00000000E+00, _TMP243); _TMP247 = max(0.00000000E+00, _TMP29); _pixel_colour0130 = _the_fog_colour1 + _TMP247*(_pixel_colour0130 - _the_fog_colour1); _TMP24 = pow(_pixel_colour0130.x, 4.54545438E-01); _TMP25 = pow(_pixel_colour0130.y, 4.54545438E-01); _TMP26 = pow(_pixel_colour0130.z, 4.54545438E-01); _TMP255 = vec3(_TMP24, _TMP25, _TMP26); _pixel1.xyz = _TMP255; _pixel1.w = 1.00000000E+00; _v0272 = vec4(_pos_ws.x, _pos_ws.y, _pos_ws.z, 1.00000000E+00); _r0272.z = dot(_view_proj1[2], _v0272); _r0272.w = dot(_view_proj1[3], _v0272); _depth1 = 5.00000000E-01 + (_r0272.z/_r0272.w)/2.00000000E+00; gl_FragDepth = _depth1; gl_FragColor = _pixel1; } // main end  Cleaned Cg output for deferred_ambient_sun_f: #extension GL_EXT_gpu_shader4 : enable vec4 _pixel1; float _depth1; float _TMP26; float _TMP25; float _TMP24; float _TMP29; float _TMP22; float _TMP20; float _TMP19; vec3 _TMP18; float _TMP32; float _TMP31; float _TMP30; float _TMP36; float _TMP27; float _TMP35; float _TMP6; vec3 _ray1; float _TMP11; float _TMP10; vec4 _TMP5; vec4 _TMP4; vec4 _TMP3; uniform sampler2D _shadow_map12; uniform sampler2D _shadow_map22; uniform sampler2D _shadow_map32; uniform vec3 _scene_ambient_colour2; uniform vec3 _sun_diffuse1; uniform vec3 _sun_specular1; uniform vec4 _the_fog_params1; uniform vec3 _the_fog_colour1; uniform vec3 _misc1; uniform vec4 _sun_pos_ws1; uniform mat4 _shadow_view_proj11; uniform mat4 _shadow_view_proj21; uniform mat4 _shadow_view_proj31; uniform vec3 _camera_pos_ws1; uniform float _far_clip_distance1; uniform mat4 _view_proj1; uniform sampler2D _tex01; uniform sampler2D _tex12; uniform sampler2D _tex22; uniform sampler2D _tex32; float _cam_dist0074; vec3 _normal_ws0074; vec3 _diff_colour0074; vec3 _spec_colour0074; float _gloss0074; vec3 _v0078; vec4 _r0100; vec4 _v0100; vec4 _r0110; vec4 _v0110; vec4 _r0120; vec4 _v0120; float _unshadowyness0130; float _shadowyness0130; float _fade0130; vec3 _ambient_component0130; float _sky_exposure0130; vec3 _sky_component0130; float _diff_exposure0130; float _flat_sun_exposure0130; vec3 _diff_component0130; float _spec_exposure0130; float _spec_illumination0130; float _rspec_illumination0130; vec3 _spec_component0130; vec3 _rspec_component0130; vec3 _pixel_colour0130; vec3 _pos_ls0138; float _our_dist0138; float _total0138; int _samples0138; int _filter_taps_side0138; float _half_filter_taps_side0138; vec2 _dithered_offset0138; vec2 _fragment_uv_offset0138; int _y10138; int _x10138; vec2 _tap_uv10138; float _TMP143; vec2 _uv0144; vec4 _TMP147; vec3 _pos_ls0158; float _our_dist0158; float _total0158; int _samples0158; int _filter_taps_side0158; float _half_filter_taps_side0158; vec2 _dithered_offset0158; vec2 _fragment_uv_offset0158; int _y10158; int _x10158; vec2 _tap_uv10158; float _TMP163; vec2 _uv0164; vec4 _TMP167; vec3 _pos_ls0178; float _our_dist0178; float _total0178; int _samples0178; int _filter_taps_side0178; float _half_filter_taps_side0178; vec2 _dithered_offset0178; vec2 _fragment_uv_offset0178; int _y10178; int _x10178; vec2 _tap_uv10178; float _TMP183; vec2 _uv0184; vec4 _TMP187; float _b0192; float _b0194; float _TMP197; float _TMP203; float _TMP231; float _x0232; float _b0238; float _y0240; float _clarity0242; float _TMP243; float _x0244; float _TMP247; vec3 _TMP255; vec4 _r0272; vec4 _v0272; // main procedure, the original name was fp_main void main() { vec4 _texel01; vec3 _pos_ws; float _cam_dist3; vec3 _camera_dir_ws1; float _sun_dist; _texel01 = texture2D(_tex01, gl_TexCoord[0].xy); _TMP3 = texture2D(_tex12, gl_TexCoord[0].xy); _TMP4 = texture2D(_tex22, gl_TexCoord[0].xy); _TMP5 = texture2D(_tex32, gl_TexCoord[0].xy); _cam_dist0074 = (2.55000000E+02*(6.55360000E+04*_texel01.x + 2.56000000E+02*_texel01.y + _texel01.z))/1.67772150E+07; _v0078 = _TMP3.xyz*vec3( 2.00000000E+00, 2.00000000E+00, 2.00000000E+00) - vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _TMP10 = dot(_v0078, _v0078); _TMP11 = inversesqrt(_TMP10); _normal_ws0074 = _TMP11*_v0078; _TMP24 = pow(_TMP4.x, 2.20000005E+00); _TMP25 = pow(_TMP4.y, 2.20000005E+00); _TMP26 = pow(_TMP4.z, 2.20000005E+00); _diff_colour0074 = vec3(_TMP24, _TMP25, _TMP26); _spec_colour0074 = _TMP5.xyz*2.00000000E+00; _gloss0074 = _TMP5.w*5.00000000E+01; if (_cam_dist0074 >= 1.00000000E+00) { // if begin discard; } // end if _pos_ws = _camera_pos_ws1 + _cam_dist0074*gl_TexCoord[1].xyz; _cam_dist3 = _cam_dist0074*_far_clip_distance1; _TMP10 = dot(gl_TexCoord[1].xyz, gl_TexCoord[1].xyz); _TMP11 = inversesqrt(_TMP10); _ray1 = _TMP11*gl_TexCoord[1].xyz; _camera_dir_ws1 = -_ray1; _TMP6 = dot(_pos_ws, _sun_pos_ws1.xyz); _sun_dist = -_TMP6; _v0100 = vec4(_pos_ws.x, _pos_ws.y, _pos_ws.z, 1.00000000E+00); _r0100.x = dot(_shadow_view_proj11[0], _v0100); _r0100.y = dot(_shadow_view_proj11[1], _v0100); _r0100.w = dot(_shadow_view_proj11[3], _v0100); _v0110 = vec4(_pos_ws.x, _pos_ws.y, _pos_ws.z, 1.00000000E+00); _r0110.x = dot(_shadow_view_proj21[0], _v0110); _r0110.y = dot(_shadow_view_proj21[1], _v0110); _r0110.w = dot(_shadow_view_proj21[3], _v0110); _v0120 = vec4(_pos_ws.x, _pos_ws.y, _pos_ws.z, 1.00000000E+00); _r0120.x = dot(_shadow_view_proj31[0], _v0120); _r0120.y = dot(_shadow_view_proj31[1], _v0120); _r0120.w = dot(_shadow_view_proj31[3], _v0120); _shadowyness0130 = 0.00000000E+00; if (_cam_dist3 < 1.40000000E+01) { // if begin _pos_ls0138.xy = _r0100.xy/_r0100.ww; _our_dist0138 = _sun_dist/5.00000000E+03; _total0138 = 0.00000000E+00; _samples0138 = 0; _TMP35 = inversesqrt(1.60000000E+01); _TMP27 = 1.00000000E+00/_TMP35; _filter_taps_side0138 = int(_TMP27); _half_filter_taps_side0138 = float((float(_filter_taps_side0138)/2.00000000E+00)); if (int(gl_FragCoord.x)%2 == 1) { // if begin if (int(gl_FragCoord.y)%2 == 1) { // if begin _dithered_offset0138 = vec2( 1.00000000E+00, 0.00000000E+00); } else { _dithered_offset0138 = vec2( -1.00000000E+00, 0.00000000E+00); } // end if } else { if (int(gl_FragCoord.y)%2 == 1) { // if begin _dithered_offset0138 = vec2( 0.00000000E+00, 1.00000000E+00); } else { _dithered_offset0138 = vec2( 0.00000000E+00, -1.00000000E+00); } // end if } // end if _fragment_uv_offset0138 = 6.00000024E-01*_dithered_offset0138; _fragment_uv_offset0138 = _fragment_uv_offset0138*vec2((8.00000000E+00/float(_filter_taps_side0138))/2.04800000E+03, (8.00000000E+00/float(_filter_taps_side0138))/2.04800000E+03); _y10138 = 0; for (; _y10138 < _filter_taps_side0138; _y10138 = _y10138 + 1) { // for begin _x10138 = 0; for (; _x10138 < _filter_taps_side0138; _x10138 = _x10138 + 1) { // for begin _tap_uv10138 = (vec2((float(_x10138) - _half_filter_taps_side0138) + 5.00000000E-01, (float(_y10138) - _half_filter_taps_side0138) + 5.00000000E-01)*8.00000000E+00)/2.04800000E+03; _tap_uv10138 = _tap_uv10138/vec2(_half_filter_taps_side0138, _half_filter_taps_side0138); _uv0144 = _pos_ls0138.xy + _fragment_uv_offset0138 + _tap_uv10138; _TMP147 = texture2DGrad(_shadow_map12, _uv0144, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_our_dist0138 > _TMP147.x) { // if begin _TMP36 = 1.00000000E+00; } else { _TMP36 = 0.00000000E+00; } // end if _TMP143 = float(_TMP36); _total0138 = _total0138 + _TMP143; _samples0138 = _samples0138 + 1; } // end for } // end for _shadowyness0130 = _total0138/float(_samples0138); } else { if (_cam_dist3 < 3.00000000E+01) { // if begin _pos_ls0158.xy = _r0110.xy/_r0110.ww; _our_dist0158 = _sun_dist/5.00000000E+03; _total0158 = 0.00000000E+00; _samples0158 = 0; _TMP35 = inversesqrt(1.60000000E+01); _TMP27 = 1.00000000E+00/_TMP35; _filter_taps_side0158 = int(_TMP27); _half_filter_taps_side0158 = float((float(_filter_taps_side0158)/2.00000000E+00)); if (int(gl_FragCoord.x)%2 == 1) { // if begin if (int(gl_FragCoord.y)%2 == 1) { // if begin _dithered_offset0158 = vec2( 1.00000000E+00, 0.00000000E+00); } else { _dithered_offset0158 = vec2( -1.00000000E+00, 0.00000000E+00); } // end if } else { if (int(gl_FragCoord.y)%2 == 1) { // if begin _dithered_offset0158 = vec2( 0.00000000E+00, 1.00000000E+00); } else { _dithered_offset0158 = vec2( 0.00000000E+00, -1.00000000E+00); } // end if } // end if _fragment_uv_offset0158 = 6.00000024E-01*_dithered_offset0158; _fragment_uv_offset0158 = _fragment_uv_offset0158*vec2((8.00000000E+00/float(_filter_taps_side0158))/2.04800000E+03, (8.00000000E+00/float(_filter_taps_side0158))/2.04800000E+03); _y10158 = 0; for (; _y10158 < _filter_taps_side0158; _y10158 = _y10158 + 1) { // for begin _x10158 = 0; for (; _x10158 < _filter_taps_side0158; _x10158 = _x10158 + 1) { // for begin _tap_uv10158 = (vec2((float(_x10158) - _half_filter_taps_side0158) + 5.00000000E-01, (float(_y10158) - _half_filter_taps_side0158) + 5.00000000E-01)*8.00000000E+00)/2.04800000E+03; _tap_uv10158 = _tap_uv10158/vec2(_half_filter_taps_side0158, _half_filter_taps_side0158); _uv0164 = _pos_ls0158.xy + _fragment_uv_offset0158 + _tap_uv10158; _TMP167 = texture2DGrad(_shadow_map22, _uv0164, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_our_dist0158 > _TMP167.x) { // if begin _TMP36 = 1.00000000E+00; } else { _TMP36 = 0.00000000E+00; } // end if _TMP163 = float(_TMP36); _total0158 = _total0158 + _TMP163; _samples0158 = _samples0158 + 1; } // end for } // end for _shadowyness0130 = _total0158/float(_samples0158); } else { if (_cam_dist3 < 5.00000000E+02) { // if begin _pos_ls0178.xy = _r0120.xy/_r0120.ww; _our_dist0178 = _sun_dist/5.00000000E+03; _total0178 = 0.00000000E+00; _samples0178 = 0; _TMP35 = inversesqrt(1.60000000E+01); _TMP27 = 1.00000000E+00/_TMP35; _filter_taps_side0178 = int(_TMP27); _half_filter_taps_side0178 = float((float(_filter_taps_side0178)/2.00000000E+00)); if (int(gl_FragCoord.x)%2 == 1) { // if begin if (int(gl_FragCoord.y)%2 == 1) { // if begin _dithered_offset0178 = vec2( 1.00000000E+00, 0.00000000E+00); } else { _dithered_offset0178 = vec2( -1.00000000E+00, 0.00000000E+00); } // end if } else { if (int(gl_FragCoord.y)%2 == 1) { // if begin _dithered_offset0178 = vec2( 0.00000000E+00, 1.00000000E+00); } else { _dithered_offset0178 = vec2( 0.00000000E+00, -1.00000000E+00); } // end if } // end if _fragment_uv_offset0178 = 6.00000024E-01*_dithered_offset0178; _fragment_uv_offset0178 = _fragment_uv_offset0178*vec2((2.24000001E+00/float(_filter_taps_side0178))/2.04800000E+03, (2.24000001E+00/float(_filter_taps_side0178))/2.04800000E+03); _y10178 = 0; for (; _y10178 < _filter_taps_side0178; _y10178 = _y10178 + 1) { // for begin _x10178 = 0; for (; _x10178 < _filter_taps_side0178; _x10178 = _x10178 + 1) { // for begin _tap_uv10178 = (vec2((float(_x10178) - _half_filter_taps_side0178) + 5.00000000E-01, (float(_y10178) - _half_filter_taps_side0178) + 5.00000000E-01)*2.24000001E+00)/2.04800000E+03; _tap_uv10178 = _tap_uv10178/vec2(_half_filter_taps_side0178, _half_filter_taps_side0178); _uv0184 = _pos_ls0178.xy + _fragment_uv_offset0178 + _tap_uv10178; _TMP187 = texture2DGrad(_shadow_map32, _uv0184, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_our_dist0178 > _TMP187.x) { // if begin _TMP36 = 1.00000000E+00; } else { _TMP36 = 0.00000000E+00; } // end if _TMP183 = float(_TMP36); _total0178 = _total0178 + _TMP183; _samples0178 = _samples0178 + 1; } // end for } // end for _shadowyness0130 = _total0178/float(_samples0178); } // end if } // end if } // end if _b0192 = (5.00000000E+02 - _cam_dist3)/0.00000000E+00; _fade0130 = min(1.00000000E+00, _b0192); _shadowyness0130 = _shadowyness0130*_fade0130; _shadowyness0130 = _shadowyness0130*_misc1.x; _b0194 = 1.00000000E+00 - _shadowyness0130; _unshadowyness0130 = max(0.00000000E+00, _b0194); _ambient_component0130 = _scene_ambient_colour2*_diff_colour0074; _sky_exposure0130 = dot(_normal_ws0074, vec3( 0.00000000E+00, 0.00000000E+00, 1.00000000E+00)); _TMP197 = max(0.00000000E+00, _sky_exposure0130); _sky_component0130 = (_diff_colour0074*_TMP197)*(_misc1.y*_scene_ambient_colour2); _diff_exposure0130 = dot(_sun_pos_ws1.xyz, _normal_ws0074); _TMP29 = min(_texel01.w, _diff_exposure0130); _TMP203 = max(0.00000000E+00, _TMP29); _flat_sun_exposure0130 = _diff_exposure0130 - _TMP203; _diff_exposure0130 = _diff_exposure0130 - _TMP203; _TMP30 = min(_unshadowyness0130, _diff_exposure0130); _TMP31 = max(_TMP30, 0.00000000E+00); _diff_component0130 = (_diff_colour0074*_TMP31)*_sun_diffuse1; _TMP32 = dot(_normal_ws0074, _sun_pos_ws1.xyz); _TMP18 = _sun_pos_ws1.xyz - (2.00000000E+00*_normal_ws0074)*_TMP32; _TMP19 = dot(_TMP18, _camera_dir_ws1); _spec_exposure0130 = -_TMP19; _TMP20 = max(1.00000001E-07, _spec_exposure0130); _spec_illumination0130 = pow(_TMP20, _gloss0074); _x0232 = 1.50000000E+00*_flat_sun_exposure0130; _TMP29 = min(1.00000000E+00, _x0232); _TMP231 = max(0.00000000E+00, _TMP29); _spec_illumination0130 = _spec_illumination0130*_TMP231; _spec_illumination0130 = _spec_illumination0130*_unshadowyness0130; _b0238 = -_spec_exposure0130; _TMP22 = max(1.00000001E-07, _b0238); _y0240 = _gloss0074/3.00000000E+00; _rspec_illumination0130 = pow(_TMP22, _y0240); _spec_component0130 = (_spec_colour0074*_spec_illumination0130)*_sun_specular1; _rspec_component0130 = ((5.00000007E-02*_spec_colour0074)*_rspec_illumination0130)*_sun_specular1; _pixel_colour0130 = _ambient_component0130 + _diff_component0130 + _sky_component0130 + _spec_component0130; _pixel_colour0130 = _pixel_colour0130 + _rspec_component0130; _clarity0242 = _the_fog_params1.x*_cam_dist3; _x0244 = -_clarity0242*_clarity0242; _TMP243 = pow(2.71828198E+00, _x0244); _TMP29 = min(1.00000000E+00, _TMP243); _TMP247 = max(0.00000000E+00, _TMP29); _pixel_colour0130 = _the_fog_colour1 + _TMP247*(_pixel_colour0130 - _the_fog_colour1); _TMP24 = pow(_pixel_colour0130.x, 4.54545438E-01); _TMP25 = pow(_pixel_colour0130.y, 4.54545438E-01); _TMP26 = pow(_pixel_colour0130.z, 4.54545438E-01); _TMP255 = vec3(_TMP24, _TMP25, _TMP26); _pixel1.xyz = _TMP255; _pixel1.w = 1.00000000E+00; _v0272 = vec4(_pos_ws.x, _pos_ws.y, _pos_ws.z, 1.00000000E+00); _r0272.z = dot(_view_proj1[2], _v0272); _r0272.w = dot(_view_proj1[3], _v0272); _depth1 = 5.00000000E-01 + (_r0272.z/_r0272.w)/2.00000000E+00; gl_FragDepth = _depth1; gl_FragColor = _pixel1; } // main end  Getting default parameters for deferred_ambient_sun_f Delegating... Replacing parameters... Replacing parameter names. replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _misc1 with misc replaced _misc1[0] with misc[0] replaced _scene_ambient_colour2 with scene_ambient_colour replaced _scene_ambient_colour2[0] with scene_ambient_colour[0] replaced _shadow_map12 with shadow_map1 replaced _shadow_map12[0] with shadow_map1[0] replaced _shadow_map22 with shadow_map2 replaced _shadow_map22[0] with shadow_map2[0] replaced _shadow_map32 with shadow_map3 replaced _shadow_map32[0] with shadow_map3[0] replaced _shadow_view_proj11 with shadow_view_proj1 replaced _shadow_view_proj11[0] with shadow_view_proj1[0] replaced _shadow_view_proj21 with shadow_view_proj2 replaced _shadow_view_proj21[0] with shadow_view_proj2[0] replaced _shadow_view_proj31 with shadow_view_proj3 replaced _shadow_view_proj31[0] with shadow_view_proj3[0] replaced _sun_diffuse1 with sun_diffuse replaced _sun_diffuse1[0] with sun_diffuse[0] replaced _sun_pos_ws1 with sun_pos_ws replaced _sun_pos_ws1[0] with sun_pos_ws[0] replaced _sun_specular1 with sun_specular replaced _sun_specular1[0] with sun_specular[0] replaced _tex01 with tex0 replaced _tex01[0] with tex0[0] replaced _tex12 with tex1 replaced _tex12[0] with tex1[0] replaced _tex22 with tex2 replaced _tex22[0] with tex2[0] replaced _tex32 with tex3 replaced _tex32[0] with tex3[0] replaced _the_fog_colour1 with the_fog_colour replaced _the_fog_colour1[0] with the_fog_colour[0] replaced _the_fog_params1 with the_fog_params replaced _the_fog_params1[0] with the_fog_params[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for deferred_ambient_sun_f Delegating... Getting default parameters for deferred_ambient_sun_f Delegating... Getting default parameters for deferred_ambient_sun_f Delegating... Getting default parameters for deferred_ambient_sun_f Delegating... Getting default parameters for deferred_ambient_sun_f Delegating... Getting default parameters for deferred_ambient_sun_f Delegating... Compiling shader: deferred_lights_v deferred_lights_f 2 Cg output for deferred_lights_v: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=0 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=0 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=1 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=1 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=0 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=0 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=0 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DFORWARD_PART=0 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.view_proj //semantic vp_main.render_target_flipping //var float4x4 view_proj : : _view_proj1[0], 4 : 6 : 1 //var float render_target_flipping : : _render_target_flipping1 : 7 : 1 //var float3 pos_ws : $vin.POSITION : ATTR0 : 0 : 1 //var float3 light_aim_ws : $vin.NORMAL : ATTR2 : 1 : 1 //var float3 diff_colour : $vin.COLOR0 : ATTR3 : 2 : 1 //var float3 spec_colour : $vin.COLOR1 : ATTR4 : 3 : 1 //var float3 light_pos_ws : $vin.TEXCOORD0 : ATTR8 : 4 : 1 //var float3 light_param : $vin.TEXCOORD1 : ATTR9 : 5 : 1 //var float3 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float3 light_aim_ws_ : $vout.TEXCOORD2 : TEX2 : 9 : 1 //var float3 diff_colour_ : $vout.TEXCOORD3 : TEX3 : 10 : 1 //var float3 spec_colour_ : $vout.TEXCOORD4 : TEX4 : 11 : 1 //var float3 light_pos_ws_ : $vout.TEXCOORD5 : TEX5 : 12 : 1 //var float3 light_param_ : $vout.TEXCOORD6 : TEX6 : 13 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 14 : 1 vec4 _for_rasteriser1; vec3 _light_param_1; vec3 _diff_colour_1; vec3 _uv0_1; vec3 _light_pos_ws_1; vec3 _light_aim_ws_1; vec3 _spec_colour_1; uniform vec4 _view_proj1[4]; uniform float _render_target_flipping1; vec4 _r0004; vec4 _v0004; // main procedure, the original name was vp_main void main() { _v0004 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0004.x = dot(_view_proj1[0], _v0004); _r0004.y = dot(_view_proj1[1], _v0004); _r0004.z = dot(_view_proj1[2], _v0004); _r0004.w = dot(_view_proj1[3], _v0004); _for_rasteriser1 = _r0004; _uv0_1 = _r0004.xyw; _for_rasteriser1.y = _r0004.y*_render_target_flipping1; _light_aim_ws_1 = gl_Normal; _diff_colour_1 = gl_Color.xyz; _spec_colour_1 = gl_SecondaryColor.xyz; _light_pos_ws_1 = gl_MultiTexCoord0.xyz; _light_param_1 = gl_MultiTexCoord1.xyz; gl_TexCoord[4].xyz = gl_SecondaryColor.xyz; gl_TexCoord[2].xyz = gl_Normal; gl_TexCoord[5].xyz = gl_MultiTexCoord0.xyz; gl_TexCoord[0].xyz = _r0004.xyw; gl_TexCoord[3].xyz = gl_Color.xyz; gl_TexCoord[6].xyz = gl_MultiTexCoord1.xyz; gl_Position = _for_rasteriser1; } // main end  Cleaned Cg output for deferred_lights_v: vec4 _for_rasteriser1; vec3 _light_param_1; vec3 _diff_colour_1; vec3 _uv0_1; vec3 _light_pos_ws_1; vec3 _light_aim_ws_1; vec3 _spec_colour_1; uniform mat4 _view_proj1; uniform float _render_target_flipping1; vec4 _r0004; vec4 _v0004; // main procedure, the original name was vp_main void main() { _v0004 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0004.x = dot(_view_proj1[0], _v0004); _r0004.y = dot(_view_proj1[1], _v0004); _r0004.z = dot(_view_proj1[2], _v0004); _r0004.w = dot(_view_proj1[3], _v0004); _for_rasteriser1 = _r0004; _uv0_1 = _r0004.xyw; _for_rasteriser1.y = _r0004.y*_render_target_flipping1; _light_aim_ws_1 = gl_Normal; _diff_colour_1 = gl_Color.xyz; _spec_colour_1 = gl_SecondaryColor.xyz; _light_pos_ws_1 = gl_MultiTexCoord0.xyz; _light_param_1 = gl_MultiTexCoord1.xyz; gl_TexCoord[4].xyz = gl_SecondaryColor.xyz; gl_TexCoord[2].xyz = gl_Normal; gl_TexCoord[5].xyz = gl_MultiTexCoord0.xyz; gl_TexCoord[0].xyz = _r0004.xyw; gl_TexCoord[3].xyz = gl_Color.xyz; gl_TexCoord[6].xyz = gl_MultiTexCoord1.xyz; gl_Position = _for_rasteriser1; } // main end  Getting default parameters for deferred_lights_v Delegating... Replacing parameters... Replacing parameter names. replaced _render_target_flipping1 with render_target_flipping replaced _render_target_flipping1[0] with render_target_flipping[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Compiling shader: cast_f:d_o_0_0_w cast_v:d_o_0_0_w Cg output for cast_v:d_o_0_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.world //var float4x4 view_proj : : _view_proj1[0], 4 : 1 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 2 : 1 //var float4x4 world : : _world2[0], 4 : 4 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 5 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 6 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 7 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _world2[4]; vec4 _r0015; vec4 _v0015; vec4 _r0047; vec4 _v0047; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_world2[0], _v0015); _r0015.y = dot(_world2[1], _v0015); _r0015.z = dot(_world2[2], _v0015); _v0047 = vec4(_r0015.x, _r0015.y, _r0015.z, 1.00000000E+00); _r0047.x = dot(_view_proj1[0], _v0047); _r0047.y = dot(_view_proj1[1], _v0047); _r0047.z = dot(_view_proj1[2], _v0047); _r0047.w = dot(_view_proj1[3], _v0047); _for_rasteriser1 = _r0047; _TMP1 = dot(_r0015.xyz, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0047; } // main end  Cleaned Cg output for cast_v:d_o_0_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform mat4 _world2; vec4 _r0015; vec4 _v0015; vec4 _r0047; vec4 _v0047; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_world2[0], _v0015); _r0015.y = dot(_world2[1], _v0015); _r0015.z = dot(_world2[2], _v0015); _v0047 = vec4(_r0015.x, _r0015.y, _r0015.z, 1.00000000E+00); _r0047.x = dot(_view_proj1[0], _v0047); _r0047.y = dot(_view_proj1[1], _v0047); _r0047.z = dot(_view_proj1[2], _v0047); _r0047.w = dot(_view_proj1[3], _v0047); _for_rasteriser1 = _r0047; _TMP1 = dot(_r0015.xyz, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0047; } // main end  Getting default parameters for cast_v:d_o_0_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] replaced _world2 with world replaced _world2[0] with world[0] Getting default parameters for cast_v:d_o_0_0_w Delegating... Getting default parameters for cast_v:d_o_0_0_w Delegating... Cg output for cast_f:d_o_0_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var float4 visibility : : _visibility1 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_o_0_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_o_0_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:d_o_0_0_w Delegating... Getting default parameters for cast_f:d_o_0_0_w Delegating... Compiling shader: cast_f:d_o_0_0_W cast_v:d_o_0_0_W Cg output for cast_v:d_o_0_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.world //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 1 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 6 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 7 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 8 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 9 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; vec4 _r0011; vec4 _v0011; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _v0011 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0011.x = dot(_view_proj1[0], _v0011); _r0011.y = dot(_view_proj1[1], _v0011); _r0011.z = dot(_view_proj1[2], _v0011); _r0011.w = dot(_view_proj1[3], _v0011); _for_rasteriser1 = _r0011; _TMP1 = dot(gl_Vertex.xyz, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0011; } // main end  Cleaned Cg output for cast_v:d_o_0_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; vec4 _r0011; vec4 _v0011; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _v0011 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0011.x = dot(_view_proj1[0], _v0011); _r0011.y = dot(_view_proj1[1], _v0011); _r0011.z = dot(_view_proj1[2], _v0011); _r0011.w = dot(_view_proj1[3], _v0011); _for_rasteriser1 = _r0011; _TMP1 = dot(gl_Vertex.xyz, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0011; } // main end  Getting default parameters for cast_v:d_o_0_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_o_0_0_W Delegating... Cg output for cast_f:d_o_0_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_o_0_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_o_0_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:d_o_0_0_W Delegating... Compiling shader: cast_f:d_o_1_0_w cast_v:d_o_1_0_w Cg output for cast_v:d_o_1_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 1 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 2 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 6 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 6 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 6 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 6 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 6 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 6 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 6 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 6 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 6 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 6 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 6 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 6 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 6 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 6 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 6 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 6 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 6 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 6 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 6 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 6 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 6 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 6 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 6 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 6 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 6 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 6 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 6 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 6 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 6 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 6 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 6 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 6 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 6 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 6 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 6 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 6 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 6 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 6 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 6 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 6 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 6 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 6 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 6 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 6 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 6 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 6 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 6 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 6 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 6 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 6 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 6 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 6 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 6 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 6 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 6 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 6 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 6 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 6 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 6 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 6 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 6 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 6 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 6 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 6 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 6 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 6 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 6 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 6 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 6 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 6 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 4 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 5 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 7 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 8 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 9 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _pos_ws0013 = _pos_ws0013/BLENDWEIGHT.xxx; _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:d_o_1_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _pos_ws0013 = _pos_ws0013/BLENDWEIGHT.xxx; _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:d_o_1_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_o_1_0_w Delegating... Getting default parameters for cast_v:d_o_1_0_w Delegating... Cg output for cast_f:d_o_1_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var float4 visibility : : _visibility1 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_o_1_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_o_1_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:d_o_1_0_w Delegating... Getting default parameters for cast_f:d_o_1_0_w Delegating... Compiling shader: cast_f:d_o_1_0_W cast_v:d_o_1_0_W Cg output for cast_v:d_o_1_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 10 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 11 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _pos_ws0013 = _pos_ws0013/BLENDWEIGHT.xxx; _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:d_o_1_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _pos_ws0013 = _pos_ws0013/BLENDWEIGHT.xxx; _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:d_o_1_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_o_1_0_W Delegating... Getting default parameters for cast_v:d_o_1_0_W Delegating... Cg output for cast_f:d_o_1_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_o_1_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_o_1_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:d_o_1_0_W Delegating... Compiling shader: cast_f:d_o_2_0_w cast_v:d_o_2_0_w Cg output for cast_v:d_o_2_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 1 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 2 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 6 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 6 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 6 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 6 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 6 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 6 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 6 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 6 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 6 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 6 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 6 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 6 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 6 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 6 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 6 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 6 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 6 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 6 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 6 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 6 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 6 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 6 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 6 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 6 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 6 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 6 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 6 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 6 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 6 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 6 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 6 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 6 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 6 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 6 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 6 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 6 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 6 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 6 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 6 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 6 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 6 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 6 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 6 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 6 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 6 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 6 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 6 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 6 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 6 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 6 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 6 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 6 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 6 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 6 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 6 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 6 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 6 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 6 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 6 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 6 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 6 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 6 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 6 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 6 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 6 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 6 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 6 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 6 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 6 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 6 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 4 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 5 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 7 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 8 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 9 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:d_o_2_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:d_o_2_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_o_2_0_w Delegating... Getting default parameters for cast_v:d_o_2_0_w Delegating... Cg output for cast_f:d_o_2_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var float4 visibility : : _visibility1 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_o_2_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_o_2_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:d_o_2_0_w Delegating... Getting default parameters for cast_f:d_o_2_0_w Delegating... Compiling shader: cast_f:d_o_2_0_W cast_v:d_o_2_0_W Cg output for cast_v:d_o_2_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 10 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 11 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:d_o_2_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:d_o_2_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_o_2_0_W Delegating... Getting default parameters for cast_v:d_o_2_0_W Delegating... Cg output for cast_f:d_o_2_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_o_2_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_o_2_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:d_o_2_0_W Delegating... Compiling shader: cast_f:d_o_3_0_w cast_v:d_o_3_0_w Cg output for cast_v:d_o_3_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 1 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 2 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 6 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 6 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 6 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 6 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 6 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 6 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 6 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 6 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 6 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 6 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 6 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 6 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 6 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 6 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 6 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 6 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 6 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 6 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 6 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 6 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 6 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 6 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 6 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 6 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 6 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 6 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 6 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 6 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 6 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 6 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 6 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 6 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 6 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 6 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 6 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 6 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 6 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 6 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 6 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 6 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 6 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 6 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 6 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 6 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 6 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 6 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 6 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 6 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 6 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 6 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 6 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 6 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 6 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 6 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 6 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 6 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 6 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 6 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 6 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 6 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 6 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 6 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 6 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 6 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 6 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 6 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 6 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 6 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 6 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 6 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 4 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 5 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 7 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 8 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 9 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:d_o_3_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:d_o_3_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_o_3_0_w Delegating... Getting default parameters for cast_v:d_o_3_0_w Delegating... Cg output for cast_f:d_o_3_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var float4 visibility : : _visibility1 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_o_3_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_o_3_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:d_o_3_0_w Delegating... Getting default parameters for cast_f:d_o_3_0_w Delegating... Compiling shader: cast_f:d_o_3_0_W cast_v:d_o_3_0_W Cg output for cast_v:d_o_3_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 10 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 11 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:d_o_3_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:d_o_3_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_o_3_0_W Delegating... Getting default parameters for cast_v:d_o_3_0_W Delegating... Cg output for cast_f:d_o_3_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_o_3_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_o_3_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:d_o_3_0_W Delegating... Compiling shader: cast_f:d_o_4_0_w cast_v:d_o_4_0_w Cg output for cast_v:d_o_4_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 1 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 2 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 6 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 6 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 6 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 6 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 6 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 6 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 6 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 6 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 6 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 6 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 6 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 6 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 6 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 6 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 6 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 6 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 6 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 6 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 6 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 6 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 6 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 6 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 6 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 6 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 6 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 6 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 6 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 6 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 6 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 6 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 6 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 6 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 6 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 6 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 6 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 6 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 6 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 6 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 6 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 6 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 6 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 6 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 6 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 6 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 6 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 6 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 6 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 6 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 6 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 6 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 6 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 6 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 6 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 6 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 6 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 6 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 6 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 6 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 6 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 6 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 6 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 6 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 6 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 6 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 6 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 6 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 6 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 6 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 6 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 6 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 4 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 5 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 7 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 8 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 9 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.w*_r0015; _total0013 = _total0013 + BLENDWEIGHT.w; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:d_o_4_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.w*_r0015; _total0013 = _total0013 + BLENDWEIGHT.w; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:d_o_4_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_o_4_0_w Delegating... Getting default parameters for cast_v:d_o_4_0_w Delegating... Cg output for cast_f:d_o_4_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var float4 visibility : : _visibility1 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_o_4_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_o_4_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:d_o_4_0_w Delegating... Getting default parameters for cast_f:d_o_4_0_w Delegating... Compiling shader: cast_f:d_o_4_0_W cast_v:d_o_4_0_W Cg output for cast_v:d_o_4_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 10 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 11 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.w*_r0015; _total0013 = _total0013 + BLENDWEIGHT.w; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:d_o_4_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.w*_r0015; _total0013 = _total0013 + BLENDWEIGHT.w; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:d_o_4_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_o_4_0_W Delegating... Getting default parameters for cast_v:d_o_4_0_W Delegating... Cg output for cast_f:d_o_4_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_o_4_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_o_4_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:d_o_4_0_W Delegating... Compiling shader: cast_f:d_O_0_0_w cast_v:d_O_0_0_w Cg output for cast_v:d_O_0_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.world //var float4x4 view_proj : : _view_proj1[0], 4 : 1 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 2 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 3 : 1 //var float4x4 world : : _world2[0], 4 : 4 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 5 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 6 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 7 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _world2[4]; vec4 _r0016; vec4 _v0016; vec4 _r0026; vec4 _v0026; float _cam_dist0046; vec3 _a0048; float _TMP49; float _x0050; vec4 _r0056; vec4 _v0056; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_world2[0], _v0016); _r0016.y = dot(_world2[1], _v0016); _r0016.z = dot(_world2[2], _v0016); _v0026 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0026.x = dot(_world2[0], _v0026); _r0026.y = dot(_world2[1], _v0026); _r0026.z = dot(_world2[2], _v0026); _a0048 = _camera_pos_ws1 - _r0016.xyz; _cam_dist0046 = dot(_a0048, _r0026.xyz); _x0050 = (_cam_dist0046/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0050); _TMP49 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP49*_r0026.xyz; _pos_ws1 = _r0016.xyz + _TMP0; _v0056 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0056.x = dot(_view_proj1[0], _v0056); _r0056.y = dot(_view_proj1[1], _v0056); _r0056.z = dot(_view_proj1[2], _v0056); _r0056.w = dot(_view_proj1[3], _v0056); _for_rasteriser1 = _r0056; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0056; } // main end  Cleaned Cg output for cast_v:d_O_0_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform mat4 _world2; vec4 _r0016; vec4 _v0016; vec4 _r0026; vec4 _v0026; float _cam_dist0046; vec3 _a0048; float _TMP49; float _x0050; vec4 _r0056; vec4 _v0056; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_world2[0], _v0016); _r0016.y = dot(_world2[1], _v0016); _r0016.z = dot(_world2[2], _v0016); _v0026 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0026.x = dot(_world2[0], _v0026); _r0026.y = dot(_world2[1], _v0026); _r0026.z = dot(_world2[2], _v0026); _a0048 = _camera_pos_ws1 - _r0016.xyz; _cam_dist0046 = dot(_a0048, _r0026.xyz); _x0050 = (_cam_dist0046/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0050); _TMP49 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP49*_r0026.xyz; _pos_ws1 = _r0016.xyz + _TMP0; _v0056 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0056.x = dot(_view_proj1[0], _v0056); _r0056.y = dot(_view_proj1[1], _v0056); _r0056.z = dot(_view_proj1[2], _v0056); _r0056.w = dot(_view_proj1[3], _v0056); _for_rasteriser1 = _r0056; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0056; } // main end  Getting default parameters for cast_v:d_O_0_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] replaced _world2 with world replaced _world2[0] with world[0] Getting default parameters for cast_v:d_O_0_0_w Delegating... Getting default parameters for cast_v:d_O_0_0_w Delegating... Getting default parameters for cast_v:d_O_0_0_w Delegating... Cg output for cast_f:d_O_0_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var float4 visibility : : _visibility1 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_O_0_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_O_0_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:d_O_0_0_w Delegating... Getting default parameters for cast_f:d_O_0_0_w Delegating... Compiling shader: cast_f:d_O_0_0_W cast_v:d_O_0_0_W Cg output for cast_v:d_O_0_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.world //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 4 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 1 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 6 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 7 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 8 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 9 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP2; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; float _cam_dist0010; vec3 _a0012; float _TMP13; float _x0014; vec4 _r0020; vec4 _v0020; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _a0012 = _camera_pos_ws1 - gl_Vertex.xyz; _cam_dist0010 = dot(_a0012, _normal_os1); _x0014 = (_cam_dist0010/4.00000000E+02)*1.00000001E-01; _TMP2 = min(1.00000001E-01, _x0014); _TMP13 = max(1.00000005E-03, _TMP2); _TMP0 = _TMP13*_normal_os1; _pos_ws1 = gl_Vertex.xyz + _TMP0; _v0020 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0020.x = dot(_view_proj1[0], _v0020); _r0020.y = dot(_view_proj1[1], _v0020); _r0020.z = dot(_view_proj1[2], _v0020); _r0020.w = dot(_view_proj1[3], _v0020); _for_rasteriser1 = _r0020; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0020; } // main end  Cleaned Cg output for cast_v:d_O_0_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP2; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; float _cam_dist0010; vec3 _a0012; float _TMP13; float _x0014; vec4 _r0020; vec4 _v0020; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _a0012 = _camera_pos_ws1 - gl_Vertex.xyz; _cam_dist0010 = dot(_a0012, _normal_os1); _x0014 = (_cam_dist0010/4.00000000E+02)*1.00000001E-01; _TMP2 = min(1.00000001E-01, _x0014); _TMP13 = max(1.00000005E-03, _TMP2); _TMP0 = _TMP13*_normal_os1; _pos_ws1 = gl_Vertex.xyz + _TMP0; _v0020 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0020.x = dot(_view_proj1[0], _v0020); _r0020.y = dot(_view_proj1[1], _v0020); _r0020.z = dot(_view_proj1[2], _v0020); _r0020.w = dot(_view_proj1[3], _v0020); _for_rasteriser1 = _r0020; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0020; } // main end  Getting default parameters for cast_v:d_O_0_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_O_0_0_W Delegating... Getting default parameters for cast_v:d_O_0_0_W Delegating... Cg output for cast_f:d_O_0_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_O_0_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_O_0_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:d_O_0_0_W Delegating... Compiling shader: cast_f:d_O_1_0_w cast_v:d_O_1_0_w Cg output for cast_v:d_O_1_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 1 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 2 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 3 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 6 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 6 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 6 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 6 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 6 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 6 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 6 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 6 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 6 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 6 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 6 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 6 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 6 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 6 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 6 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 6 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 6 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 6 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 6 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 6 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 6 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 6 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 6 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 6 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 6 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 6 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 6 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 6 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 6 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 6 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 6 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 6 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 6 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 6 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 6 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 6 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 6 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 6 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 6 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 6 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 6 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 6 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 6 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 6 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 6 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 6 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 6 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 6 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 6 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 6 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 6 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 6 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 6 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 6 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 6 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 6 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 6 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 6 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 6 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 6 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 6 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 6 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 6 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 6 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 6 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 6 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 6 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 6 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 6 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 6 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 4 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 5 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 7 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 8 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 9 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _pos_ws0014 = _pos_ws0014/BLENDWEIGHT.xxx; _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:d_O_1_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _pos_ws0014 = _pos_ws0014/BLENDWEIGHT.xxx; _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:d_O_1_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_O_1_0_w Delegating... Getting default parameters for cast_v:d_O_1_0_w Delegating... Getting default parameters for cast_v:d_O_1_0_w Delegating... Cg output for cast_f:d_O_1_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var float4 visibility : : _visibility1 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_O_1_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_O_1_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:d_O_1_0_w Delegating... Getting default parameters for cast_f:d_O_1_0_w Delegating... Compiling shader: cast_f:d_O_1_0_W cast_v:d_O_1_0_W Cg output for cast_v:d_O_1_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 4 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 10 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 11 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _pos_ws0014 = _pos_ws0014/BLENDWEIGHT.xxx; _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:d_O_1_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _pos_ws0014 = _pos_ws0014/BLENDWEIGHT.xxx; _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:d_O_1_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_O_1_0_W Delegating... Getting default parameters for cast_v:d_O_1_0_W Delegating... Getting default parameters for cast_v:d_O_1_0_W Delegating... Cg output for cast_f:d_O_1_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_O_1_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_O_1_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:d_O_1_0_W Delegating... Compiling shader: cast_f:d_O_2_0_w cast_v:d_O_2_0_w Cg output for cast_v:d_O_2_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 1 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 2 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 3 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 6 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 6 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 6 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 6 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 6 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 6 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 6 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 6 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 6 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 6 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 6 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 6 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 6 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 6 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 6 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 6 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 6 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 6 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 6 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 6 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 6 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 6 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 6 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 6 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 6 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 6 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 6 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 6 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 6 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 6 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 6 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 6 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 6 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 6 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 6 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 6 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 6 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 6 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 6 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 6 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 6 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 6 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 6 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 6 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 6 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 6 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 6 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 6 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 6 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 6 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 6 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 6 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 6 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 6 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 6 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 6 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 6 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 6 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 6 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 6 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 6 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 6 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 6 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 6 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 6 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 6 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 6 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 6 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 6 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 6 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 4 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 5 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 7 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 8 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 9 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:d_O_2_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:d_O_2_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_O_2_0_w Delegating... Getting default parameters for cast_v:d_O_2_0_w Delegating... Getting default parameters for cast_v:d_O_2_0_w Delegating... Cg output for cast_f:d_O_2_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var float4 visibility : : _visibility1 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_O_2_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_O_2_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:d_O_2_0_w Delegating... Getting default parameters for cast_f:d_O_2_0_w Delegating... Compiling shader: cast_f:d_O_2_0_W cast_v:d_O_2_0_W Cg output for cast_v:d_O_2_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 4 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 10 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 11 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:d_O_2_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:d_O_2_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_O_2_0_W Delegating... Getting default parameters for cast_v:d_O_2_0_W Delegating... Getting default parameters for cast_v:d_O_2_0_W Delegating... Cg output for cast_f:d_O_2_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_O_2_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_O_2_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:d_O_2_0_W Delegating... Compiling shader: cast_f:d_O_3_0_w cast_v:d_O_3_0_w Cg output for cast_v:d_O_3_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 1 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 2 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 3 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 6 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 6 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 6 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 6 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 6 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 6 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 6 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 6 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 6 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 6 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 6 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 6 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 6 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 6 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 6 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 6 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 6 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 6 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 6 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 6 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 6 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 6 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 6 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 6 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 6 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 6 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 6 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 6 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 6 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 6 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 6 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 6 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 6 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 6 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 6 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 6 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 6 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 6 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 6 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 6 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 6 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 6 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 6 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 6 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 6 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 6 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 6 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 6 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 6 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 6 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 6 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 6 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 6 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 6 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 6 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 6 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 6 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 6 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 6 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 6 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 6 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 6 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 6 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 6 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 6 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 6 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 6 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 6 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 6 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 6 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 4 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 5 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 7 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 8 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 9 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:d_O_3_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:d_O_3_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_O_3_0_w Delegating... Getting default parameters for cast_v:d_O_3_0_w Delegating... Getting default parameters for cast_v:d_O_3_0_w Delegating... Cg output for cast_f:d_O_3_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var float4 visibility : : _visibility1 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_O_3_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_O_3_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:d_O_3_0_w Delegating... Getting default parameters for cast_f:d_O_3_0_w Delegating... Compiling shader: cast_f:d_O_3_0_W cast_v:d_O_3_0_W Cg output for cast_v:d_O_3_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 4 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 10 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 11 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:d_O_3_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:d_O_3_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_O_3_0_W Delegating... Getting default parameters for cast_v:d_O_3_0_W Delegating... Getting default parameters for cast_v:d_O_3_0_W Delegating... Cg output for cast_f:d_O_3_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_O_3_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_O_3_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:d_O_3_0_W Delegating... Compiling shader: cast_f:d_O_4_0_w cast_v:d_O_4_0_w Cg output for cast_v:d_O_4_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 1 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 2 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 3 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 6 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 6 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 6 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 6 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 6 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 6 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 6 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 6 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 6 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 6 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 6 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 6 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 6 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 6 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 6 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 6 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 6 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 6 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 6 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 6 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 6 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 6 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 6 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 6 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 6 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 6 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 6 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 6 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 6 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 6 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 6 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 6 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 6 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 6 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 6 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 6 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 6 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 6 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 6 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 6 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 6 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 6 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 6 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 6 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 6 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 6 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 6 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 6 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 6 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 6 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 6 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 6 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 6 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 6 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 6 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 6 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 6 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 6 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 6 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 6 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 6 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 6 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 6 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 6 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 6 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 6 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 6 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 6 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 6 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 6 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 4 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 5 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 7 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 8 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 9 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.w*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.w*_r0024; _total0014 = _total0014 + BLENDWEIGHT.w; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:d_O_4_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.w*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.w*_r0024; _total0014 = _total0014 + BLENDWEIGHT.w; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:d_O_4_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_O_4_0_w Delegating... Getting default parameters for cast_v:d_O_4_0_w Delegating... Getting default parameters for cast_v:d_O_4_0_w Delegating... Cg output for cast_f:d_O_4_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var float4 visibility : : _visibility1 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_O_4_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0019; float _v0021; vec2 _uv0021; vec4 _TMP22; vec2 _uv0023; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0019 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0019, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0021 = _visibility1.x*1.60000000E+01; _uv0021 = vec2(float(_x1), float(_y1)); _uv0021.x = _uv0021.x + float((8.00000000E+00*float((int(_v0021)%4)))); _uv0021.y = _uv0021.y + float((8.00000000E+00*float(int((_v0021/4.00000000E+00))))); _uv0023 = _uv0021/3.20000000E+01; _TMP22 = texture2DGrad(_stipple_map1, _uv0023, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP22.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_O_4_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:d_O_4_0_w Delegating... Getting default parameters for cast_f:d_O_4_0_w Delegating... Compiling shader: cast_f:d_O_4_0_W cast_v:d_O_4_0_W Cg output for cast_v:d_O_4_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 4 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 10 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 11 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.w*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.w*_r0024; _total0014 = _total0014 + BLENDWEIGHT.w; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:d_O_4_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = vec2( 0.00000000E+00, 0.00000000E+00); _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.w*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.w*_r0024; _total0014 = _total0014 + BLENDWEIGHT.w; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = vec2( 0.00000000E+00, 0.00000000E+00); gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:d_O_4_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:d_O_4_0_W Delegating... Getting default parameters for cast_v:d_O_4_0_W Delegating... Getting default parameters for cast_v:d_O_4_0_W Delegating... Cg output for cast_f:d_O_4_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=0 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var float alpha_rej : : _alpha_rej1 : 5 : 1 //var float bias_offset : : _bias_offset1 : 6 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : : 0 : 0 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 7 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:d_O_4_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0018; float _v0020; vec2 _uv0020; vec4 _TMP21; vec2 _uv0022; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0018 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0018, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; if (1.00000000E+00 <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0020 = _v1*1.60000000E+01; _uv0020 = vec2(float(_x1), float(_y1)); _uv0020.x = _uv0020.x + float((8.00000000E+00*float((int(_v0020)%4)))); _uv0020.y = _uv0020.y + float((8.00000000E+00*float(int((_v0020/4.00000000E+00))))); _uv0022 = _uv0020/3.20000000E+01; _TMP21 = texture2DGrad(_stipple_map1, _uv0022, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP21.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:d_O_4_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:d_O_4_0_W Delegating... Compiling shader: cast_f:D_o_0_0_w cast_v:D_o_0_0_w Cg output for cast_v:D_o_0_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.world //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float4x4 world : : _world2[0], 4 : 5 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 6 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 7 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 8 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _world2[4]; vec4 _r0015; vec4 _v0015; vec4 _r0047; vec4 _v0047; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_world2[0], _v0015); _r0015.y = dot(_world2[1], _v0015); _r0015.z = dot(_world2[2], _v0015); _v0047 = vec4(_r0015.x, _r0015.y, _r0015.z, 1.00000000E+00); _r0047.x = dot(_view_proj1[0], _v0047); _r0047.y = dot(_view_proj1[1], _v0047); _r0047.z = dot(_view_proj1[2], _v0047); _r0047.w = dot(_view_proj1[3], _v0047); _for_rasteriser1 = _r0047; _TMP1 = dot(_r0015.xyz, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0047; } // main end  Cleaned Cg output for cast_v:D_o_0_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform mat4 _world2; vec4 _r0015; vec4 _v0015; vec4 _r0047; vec4 _v0047; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_world2[0], _v0015); _r0015.y = dot(_world2[1], _v0015); _r0015.z = dot(_world2[2], _v0015); _v0047 = vec4(_r0015.x, _r0015.y, _r0015.z, 1.00000000E+00); _r0047.x = dot(_view_proj1[0], _v0047); _r0047.y = dot(_view_proj1[1], _v0047); _r0047.z = dot(_view_proj1[2], _v0047); _r0047.w = dot(_view_proj1[3], _v0047); _for_rasteriser1 = _r0047; _TMP1 = dot(_r0015.xyz, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0047; } // main end  Getting default parameters for cast_v:D_o_0_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] replaced _world2 with world replaced _world2[0] with world[0] Getting default parameters for cast_v:D_o_0_0_w Delegating... Getting default parameters for cast_v:D_o_0_0_w Delegating... Cg output for cast_f:D_o_0_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 4 : 1 //var float4 visibility : : _visibility1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_o_0_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_o_0_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:D_o_0_0_w Delegating... Getting default parameters for cast_f:D_o_0_0_w Delegating... Compiling shader: cast_f:D_o_0_0_W cast_v:D_o_0_0_W Cg output for cast_v:D_o_0_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.world //var float4x4 view_proj : : _view_proj1[0], 4 : 3 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 4 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 2 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 7 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 8 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 9 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 10 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; vec4 _r0011; vec4 _v0011; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _v0011 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0011.x = dot(_view_proj1[0], _v0011); _r0011.y = dot(_view_proj1[1], _v0011); _r0011.z = dot(_view_proj1[2], _v0011); _r0011.w = dot(_view_proj1[3], _v0011); _for_rasteriser1 = _r0011; _TMP1 = dot(gl_Vertex.xyz, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0011; } // main end  Cleaned Cg output for cast_v:D_o_0_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; vec4 _r0011; vec4 _v0011; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _v0011 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0011.x = dot(_view_proj1[0], _v0011); _r0011.y = dot(_view_proj1[1], _v0011); _r0011.z = dot(_view_proj1[2], _v0011); _r0011.w = dot(_view_proj1[3], _v0011); _for_rasteriser1 = _r0011; _TMP1 = dot(gl_Vertex.xyz, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0011; } // main end  Getting default parameters for cast_v:D_o_0_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_o_0_0_W Delegating... Cg output for cast_f:D_o_0_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_o_0_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_o_0_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:D_o_0_0_W Delegating... Compiling shader: cast_f:D_o_1_0_w cast_v:D_o_1_0_w Cg output for cast_v:D_o_1_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 10 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _pos_ws0013 = _pos_ws0013/BLENDWEIGHT.xxx; _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:D_o_1_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _pos_ws0013 = _pos_ws0013/BLENDWEIGHT.xxx; _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:D_o_1_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_o_1_0_w Delegating... Getting default parameters for cast_v:D_o_1_0_w Delegating... Cg output for cast_f:D_o_1_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 4 : 1 //var float4 visibility : : _visibility1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_o_1_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_o_1_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:D_o_1_0_w Delegating... Getting default parameters for cast_f:D_o_1_0_w Delegating... Compiling shader: cast_f:D_o_1_0_W cast_v:D_o_1_0_W Cg output for cast_v:D_o_1_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 3 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 4 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 8 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 8 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 8 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 8 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 8 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 8 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 8 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 8 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 8 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 8 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 8 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 8 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 8 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 8 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 8 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 8 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 8 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 8 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 8 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 8 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 8 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 8 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 8 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 8 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 8 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 8 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 8 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 8 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 8 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 8 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 8 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 8 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 8 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 8 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 8 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 8 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 8 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 8 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 8 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 8 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 8 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 8 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 8 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 8 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 8 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 8 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 8 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 8 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 8 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 8 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 8 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 8 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 8 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 8 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 8 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 8 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 8 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 8 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 8 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 8 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 8 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 8 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 8 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 8 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 8 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 8 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 8 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 8 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 8 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 8 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 2 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 6 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 7 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 9 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 10 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 11 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 12 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _pos_ws0013 = _pos_ws0013/BLENDWEIGHT.xxx; _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:D_o_1_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _pos_ws0013 = _pos_ws0013/BLENDWEIGHT.xxx; _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:D_o_1_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_o_1_0_W Delegating... Getting default parameters for cast_v:D_o_1_0_W Delegating... Cg output for cast_f:D_o_1_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_o_1_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_o_1_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:D_o_1_0_W Delegating... Compiling shader: cast_f:D_o_2_0_w cast_v:D_o_2_0_w Cg output for cast_v:D_o_2_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 10 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:D_o_2_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:D_o_2_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_o_2_0_w Delegating... Getting default parameters for cast_v:D_o_2_0_w Delegating... Cg output for cast_f:D_o_2_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 4 : 1 //var float4 visibility : : _visibility1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_o_2_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_o_2_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:D_o_2_0_w Delegating... Getting default parameters for cast_f:D_o_2_0_w Delegating... Compiling shader: cast_f:D_o_2_0_W cast_v:D_o_2_0_W Cg output for cast_v:D_o_2_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 3 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 4 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 8 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 8 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 8 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 8 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 8 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 8 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 8 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 8 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 8 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 8 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 8 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 8 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 8 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 8 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 8 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 8 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 8 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 8 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 8 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 8 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 8 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 8 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 8 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 8 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 8 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 8 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 8 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 8 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 8 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 8 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 8 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 8 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 8 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 8 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 8 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 8 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 8 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 8 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 8 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 8 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 8 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 8 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 8 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 8 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 8 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 8 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 8 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 8 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 8 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 8 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 8 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 8 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 8 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 8 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 8 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 8 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 8 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 8 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 8 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 8 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 8 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 8 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 8 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 8 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 8 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 8 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 8 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 8 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 8 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 8 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 2 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 6 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 7 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 9 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 10 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 11 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 12 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:D_o_2_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:D_o_2_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_o_2_0_W Delegating... Getting default parameters for cast_v:D_o_2_0_W Delegating... Cg output for cast_f:D_o_2_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_o_2_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_o_2_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:D_o_2_0_W Delegating... Compiling shader: cast_f:D_o_3_0_w cast_v:D_o_3_0_w Cg output for cast_v:D_o_3_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 10 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:D_o_3_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:D_o_3_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_o_3_0_w Delegating... Getting default parameters for cast_v:D_o_3_0_w Delegating... Cg output for cast_f:D_o_3_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 4 : 1 //var float4 visibility : : _visibility1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_o_3_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_o_3_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:D_o_3_0_w Delegating... Getting default parameters for cast_f:D_o_3_0_w Delegating... Compiling shader: cast_f:D_o_3_0_W cast_v:D_o_3_0_W Cg output for cast_v:D_o_3_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 3 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 4 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 8 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 8 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 8 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 8 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 8 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 8 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 8 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 8 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 8 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 8 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 8 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 8 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 8 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 8 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 8 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 8 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 8 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 8 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 8 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 8 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 8 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 8 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 8 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 8 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 8 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 8 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 8 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 8 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 8 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 8 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 8 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 8 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 8 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 8 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 8 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 8 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 8 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 8 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 8 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 8 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 8 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 8 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 8 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 8 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 8 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 8 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 8 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 8 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 8 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 8 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 8 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 8 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 8 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 8 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 8 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 8 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 8 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 8 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 8 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 8 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 8 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 8 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 8 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 8 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 8 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 8 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 8 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 8 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 8 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 8 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 2 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 6 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 7 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 9 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 10 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 11 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 12 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:D_o_3_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:D_o_3_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_o_3_0_W Delegating... Getting default parameters for cast_v:D_o_3_0_W Delegating... Cg output for cast_f:D_o_3_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_o_3_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_o_3_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:D_o_3_0_W Delegating... Compiling shader: cast_f:D_o_4_0_w cast_v:D_o_4_0_w Cg output for cast_v:D_o_4_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 10 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.w*_r0015; _total0013 = _total0013 + BLENDWEIGHT.w; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:D_o_4_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.w*_r0015; _total0013 = _total0013 + BLENDWEIGHT.w; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:D_o_4_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_o_4_0_w Delegating... Getting default parameters for cast_v:D_o_4_0_w Delegating... Cg output for cast_f:D_o_4_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 4 : 1 //var float4 visibility : : _visibility1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_o_4_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_o_4_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:D_o_4_0_w Delegating... Getting default parameters for cast_f:D_o_4_0_w Delegating... Compiling shader: cast_f:D_o_4_0_W cast_v:D_o_4_0_W Cg output for cast_v:D_o_4_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 3 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 4 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 8 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 8 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 8 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 8 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 8 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 8 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 8 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 8 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 8 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 8 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 8 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 8 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 8 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 8 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 8 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 8 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 8 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 8 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 8 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 8 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 8 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 8 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 8 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 8 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 8 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 8 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 8 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 8 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 8 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 8 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 8 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 8 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 8 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 8 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 8 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 8 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 8 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 8 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 8 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 8 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 8 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 8 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 8 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 8 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 8 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 8 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 8 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 8 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 8 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 8 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 8 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 8 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 8 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 8 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 8 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 8 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 8 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 8 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 8 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 8 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 8 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 8 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 8 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 8 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 8 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 8 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 8 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 8 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 8 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 8 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 2 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 6 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 7 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 9 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 10 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 11 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 12 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.w*_r0015; _total0013 = _total0013 + BLENDWEIGHT.w; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Cleaned Cg output for cast_v:D_o_4_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0013; float _total0013; vec3 _r0015; vec4 _M0015[3]; vec4 _v0015; vec4 _r0041; vec4 _v0041; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { _uv0_1 = gl_MultiTexCoord0.xy; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = BLENDWEIGHT.x*_r0015; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.y*_r0015; _total0013 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.z*_r0015; _total0013 = _total0013 + BLENDWEIGHT.z; _M0015[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0015[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0015[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0015 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0015.x = dot(_M0015[0], _v0015); _r0015.y = dot(_M0015[1], _v0015); _r0015.z = dot(_M0015[2], _v0015); _pos_ws0013 = _pos_ws0013 + BLENDWEIGHT.w*_r0015; _total0013 = _total0013 + BLENDWEIGHT.w; _pos_ws0013 = _pos_ws0013/vec3(_total0013, _total0013, _total0013); _v0041 = vec4(_pos_ws0013.x, _pos_ws0013.y, _pos_ws0013.z, 1.00000000E+00); _r0041.x = dot(_view_proj1[0], _v0041); _r0041.y = dot(_view_proj1[1], _v0041); _r0041.z = dot(_view_proj1[2], _v0041); _r0041.w = dot(_view_proj1[3], _v0041); _for_rasteriser1 = _r0041; _TMP1 = dot(_pos_ws0013, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0041; } // main end  Getting default parameters for cast_v:D_o_4_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_o_4_0_W Delegating... Getting default parameters for cast_v:D_o_4_0_W Delegating... Cg output for cast_f:D_o_4_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=0 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_o_4_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_o_4_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:D_o_4_0_W Delegating... Compiling shader: cast_f:D_O_0_0_w cast_v:D_O_0_0_w Cg output for cast_v:D_O_0_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.world //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 4 : 1 //var float4x4 world : : _world2[0], 4 : 5 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 6 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 7 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 8 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _world2[4]; vec4 _r0016; vec4 _v0016; vec4 _r0026; vec4 _v0026; float _cam_dist0046; vec3 _a0048; float _TMP49; float _x0050; vec4 _r0056; vec4 _v0056; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_world2[0], _v0016); _r0016.y = dot(_world2[1], _v0016); _r0016.z = dot(_world2[2], _v0016); _v0026 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0026.x = dot(_world2[0], _v0026); _r0026.y = dot(_world2[1], _v0026); _r0026.z = dot(_world2[2], _v0026); _a0048 = _camera_pos_ws1 - _r0016.xyz; _cam_dist0046 = dot(_a0048, _r0026.xyz); _x0050 = (_cam_dist0046/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0050); _TMP49 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP49*_r0026.xyz; _pos_ws1 = _r0016.xyz + _TMP0; _v0056 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0056.x = dot(_view_proj1[0], _v0056); _r0056.y = dot(_view_proj1[1], _v0056); _r0056.z = dot(_view_proj1[2], _v0056); _r0056.w = dot(_view_proj1[3], _v0056); _for_rasteriser1 = _r0056; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0056; } // main end  Cleaned Cg output for cast_v:D_O_0_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform mat4 _world2; vec4 _r0016; vec4 _v0016; vec4 _r0026; vec4 _v0026; float _cam_dist0046; vec3 _a0048; float _TMP49; float _x0050; vec4 _r0056; vec4 _v0056; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_world2[0], _v0016); _r0016.y = dot(_world2[1], _v0016); _r0016.z = dot(_world2[2], _v0016); _v0026 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0026.x = dot(_world2[0], _v0026); _r0026.y = dot(_world2[1], _v0026); _r0026.z = dot(_world2[2], _v0026); _a0048 = _camera_pos_ws1 - _r0016.xyz; _cam_dist0046 = dot(_a0048, _r0026.xyz); _x0050 = (_cam_dist0046/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0050); _TMP49 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP49*_r0026.xyz; _pos_ws1 = _r0016.xyz + _TMP0; _v0056 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0056.x = dot(_view_proj1[0], _v0056); _r0056.y = dot(_view_proj1[1], _v0056); _r0056.z = dot(_view_proj1[2], _v0056); _r0056.w = dot(_view_proj1[3], _v0056); _for_rasteriser1 = _r0056; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0056; } // main end  Getting default parameters for cast_v:D_O_0_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] replaced _world2 with world replaced _world2[0] with world[0] Getting default parameters for cast_v:D_O_0_0_w Delegating... Getting default parameters for cast_v:D_O_0_0_w Delegating... Getting default parameters for cast_v:D_O_0_0_w Delegating... Cg output for cast_f:D_O_0_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 4 : 1 //var float4 visibility : : _visibility1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_O_0_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_O_0_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:D_O_0_0_w Delegating... Getting default parameters for cast_f:D_O_0_0_w Delegating... Compiling shader: cast_f:D_O_0_0_W cast_v:D_O_0_0_W Cg output for cast_v:D_O_0_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.world //var float4x4 view_proj : : _view_proj1[0], 4 : 3 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 4 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 5 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 2 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 7 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 8 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 9 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 10 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP2; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; float _cam_dist0010; vec3 _a0012; float _TMP13; float _x0014; vec4 _r0020; vec4 _v0020; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _a0012 = _camera_pos_ws1 - gl_Vertex.xyz; _cam_dist0010 = dot(_a0012, _normal_os1); _x0014 = (_cam_dist0010/4.00000000E+02)*1.00000001E-01; _TMP2 = min(1.00000001E-01, _x0014); _TMP13 = max(1.00000005E-03, _TMP2); _TMP0 = _TMP13*_normal_os1; _pos_ws1 = gl_Vertex.xyz + _TMP0; _v0020 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0020.x = dot(_view_proj1[0], _v0020); _r0020.y = dot(_view_proj1[1], _v0020); _r0020.z = dot(_view_proj1[2], _v0020); _r0020.w = dot(_view_proj1[3], _v0020); _for_rasteriser1 = _r0020; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0020; } // main end  Cleaned Cg output for cast_v:D_O_0_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP2; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; float _cam_dist0010; vec3 _a0012; float _TMP13; float _x0014; vec4 _r0020; vec4 _v0020; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _a0012 = _camera_pos_ws1 - gl_Vertex.xyz; _cam_dist0010 = dot(_a0012, _normal_os1); _x0014 = (_cam_dist0010/4.00000000E+02)*1.00000001E-01; _TMP2 = min(1.00000001E-01, _x0014); _TMP13 = max(1.00000005E-03, _TMP2); _TMP0 = _TMP13*_normal_os1; _pos_ws1 = gl_Vertex.xyz + _TMP0; _v0020 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0020.x = dot(_view_proj1[0], _v0020); _r0020.y = dot(_view_proj1[1], _v0020); _r0020.z = dot(_view_proj1[2], _v0020); _r0020.w = dot(_view_proj1[3], _v0020); _for_rasteriser1 = _r0020; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0020; } // main end  Getting default parameters for cast_v:D_O_0_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_O_0_0_W Delegating... Getting default parameters for cast_v:D_O_0_0_W Delegating... Cg output for cast_f:D_O_0_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=0 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_O_0_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_O_0_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:D_O_0_0_W Delegating... Compiling shader: cast_f:D_O_1_0_w cast_v:D_O_1_0_w Cg output for cast_v:D_O_1_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 4 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 10 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _pos_ws0014 = _pos_ws0014/BLENDWEIGHT.xxx; _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:D_O_1_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _pos_ws0014 = _pos_ws0014/BLENDWEIGHT.xxx; _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:D_O_1_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_O_1_0_w Delegating... Getting default parameters for cast_v:D_O_1_0_w Delegating... Getting default parameters for cast_v:D_O_1_0_w Delegating... Cg output for cast_f:D_O_1_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 4 : 1 //var float4 visibility : : _visibility1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_O_1_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_O_1_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:D_O_1_0_w Delegating... Getting default parameters for cast_f:D_O_1_0_w Delegating... Compiling shader: cast_f:D_O_1_0_W cast_v:D_O_1_0_W Cg output for cast_v:D_O_1_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 3 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 4 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 5 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 8 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 8 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 8 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 8 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 8 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 8 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 8 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 8 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 8 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 8 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 8 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 8 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 8 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 8 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 8 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 8 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 8 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 8 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 8 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 8 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 8 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 8 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 8 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 8 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 8 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 8 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 8 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 8 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 8 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 8 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 8 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 8 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 8 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 8 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 8 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 8 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 8 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 8 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 8 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 8 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 8 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 8 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 8 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 8 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 8 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 8 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 8 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 8 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 8 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 8 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 8 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 8 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 8 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 8 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 8 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 8 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 8 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 8 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 8 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 8 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 8 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 8 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 8 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 8 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 8 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 8 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 8 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 8 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 8 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 8 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 2 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 6 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 7 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 9 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 10 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 11 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 12 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _pos_ws0014 = _pos_ws0014/BLENDWEIGHT.xxx; _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:D_O_1_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _pos_ws0014 = _pos_ws0014/BLENDWEIGHT.xxx; _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:D_O_1_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_O_1_0_W Delegating... Getting default parameters for cast_v:D_O_1_0_W Delegating... Getting default parameters for cast_v:D_O_1_0_W Delegating... Cg output for cast_f:D_O_1_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=1 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_O_1_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_O_1_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:D_O_1_0_W Delegating... Compiling shader: cast_f:D_O_2_0_w cast_v:D_O_2_0_w Cg output for cast_v:D_O_2_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 4 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 10 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:D_O_2_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:D_O_2_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_O_2_0_w Delegating... Getting default parameters for cast_v:D_O_2_0_w Delegating... Getting default parameters for cast_v:D_O_2_0_w Delegating... Cg output for cast_f:D_O_2_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 4 : 1 //var float4 visibility : : _visibility1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_O_2_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_O_2_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:D_O_2_0_w Delegating... Getting default parameters for cast_f:D_O_2_0_w Delegating... Compiling shader: cast_f:D_O_2_0_W cast_v:D_O_2_0_W Cg output for cast_v:D_O_2_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 3 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 4 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 5 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 8 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 8 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 8 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 8 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 8 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 8 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 8 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 8 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 8 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 8 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 8 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 8 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 8 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 8 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 8 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 8 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 8 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 8 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 8 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 8 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 8 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 8 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 8 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 8 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 8 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 8 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 8 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 8 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 8 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 8 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 8 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 8 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 8 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 8 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 8 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 8 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 8 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 8 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 8 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 8 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 8 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 8 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 8 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 8 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 8 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 8 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 8 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 8 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 8 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 8 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 8 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 8 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 8 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 8 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 8 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 8 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 8 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 8 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 8 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 8 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 8 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 8 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 8 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 8 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 8 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 8 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 8 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 8 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 8 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 8 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 2 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 6 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 7 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 9 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 10 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 11 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 12 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:D_O_2_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:D_O_2_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_O_2_0_W Delegating... Getting default parameters for cast_v:D_O_2_0_W Delegating... Getting default parameters for cast_v:D_O_2_0_W Delegating... Cg output for cast_f:D_O_2_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=2 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_O_2_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_O_2_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:D_O_2_0_W Delegating... Compiling shader: cast_f:D_O_3_0_w cast_v:D_O_3_0_w Cg output for cast_v:D_O_3_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 4 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 10 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:D_O_3_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:D_O_3_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_O_3_0_w Delegating... Getting default parameters for cast_v:D_O_3_0_w Delegating... Getting default parameters for cast_v:D_O_3_0_w Delegating... Cg output for cast_f:D_O_3_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 4 : 1 //var float4 visibility : : _visibility1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_O_3_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_O_3_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:D_O_3_0_w Delegating... Getting default parameters for cast_f:D_O_3_0_w Delegating... Compiling shader: cast_f:D_O_3_0_W cast_v:D_O_3_0_W Cg output for cast_v:D_O_3_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 3 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 4 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 5 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 8 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 8 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 8 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 8 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 8 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 8 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 8 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 8 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 8 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 8 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 8 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 8 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 8 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 8 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 8 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 8 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 8 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 8 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 8 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 8 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 8 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 8 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 8 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 8 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 8 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 8 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 8 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 8 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 8 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 8 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 8 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 8 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 8 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 8 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 8 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 8 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 8 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 8 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 8 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 8 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 8 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 8 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 8 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 8 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 8 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 8 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 8 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 8 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 8 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 8 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 8 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 8 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 8 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 8 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 8 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 8 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 8 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 8 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 8 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 8 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 8 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 8 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 8 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 8 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 8 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 8 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 8 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 8 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 8 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 8 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 2 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 6 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 7 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 9 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 10 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 11 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 12 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:D_O_3_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:D_O_3_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_O_3_0_W Delegating... Getting default parameters for cast_v:D_O_3_0_W Delegating... Getting default parameters for cast_v:D_O_3_0_W Delegating... Cg output for cast_f:D_O_3_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=3 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_O_3_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_O_3_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:D_O_3_0_W Delegating... Compiling shader: cast_f:D_O_4_0_w cast_v:D_O_4_0_w Cg output for cast_v:D_O_4_0_w: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 2 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 3 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 4 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 7 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 7 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 7 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 7 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 7 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 7 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 7 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 7 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 7 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 7 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 7 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 7 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 7 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 7 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 7 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 7 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 7 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 7 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 7 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 7 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 7 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 7 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 7 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 7 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 7 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 7 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 7 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 7 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 7 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 7 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 7 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 7 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 7 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 7 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 7 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 7 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 7 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 7 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 7 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 7 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 7 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 7 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 7 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 7 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 7 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 7 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 7 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 7 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 7 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 7 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 7 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 7 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 7 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 7 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 7 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 7 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 7 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 7 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 7 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 7 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 7 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 7 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 7 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 7 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 7 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 7 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 7 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 7 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 7 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 5 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 6 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 10 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.w*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.w*_r0024; _total0014 = _total0014 + BLENDWEIGHT.w; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:D_O_4_0_w: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.w*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.w*_r0024; _total0014 = _total0014 + BLENDWEIGHT.w; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:D_O_4_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_O_4_0_w Delegating... Getting default parameters for cast_v:D_O_4_0_w Delegating... Getting default parameters for cast_v:D_O_4_0_w Delegating... Cg output for cast_f:D_O_4_0_w: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=0 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.visibility //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 3 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 4 : 1 //var float4 visibility : : _visibility1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_O_4_0_w: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform vec4 _visibility1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0021; float _v0025; vec2 _uv0025; vec4 _TMP26; vec2 _uv0027; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0021 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0021, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if if (_visibility1.x < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0025 = _visibility1.x*1.60000000E+01; _uv0025 = vec2(float(_x1), float(_y1)); _uv0025.x = _uv0025.x + float((8.00000000E+00*float((int(_v0025)%4)))); _uv0025.y = _uv0025.y + float((8.00000000E+00*float(int((_v0025/4.00000000E+00))))); _uv0027 = _uv0025/3.20000000E+01; _TMP26 = texture2DGrad(_stipple_map1, _uv0027, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP26.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_O_4_0_w Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] replaced _visibility1 with visibility replaced _visibility1[0] with visibility[0] Getting default parameters for cast_f:D_O_4_0_w Delegating... Getting default parameters for cast_f:D_O_4_0_w Delegating... Compiling shader: cast_f:D_O_4_0_W cast_v:D_O_4_0_W Cg output for cast_v:D_O_4_0_W: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry caster_vp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program caster_vp_main //semantic caster_vp_main.view_proj //semantic caster_vp_main.light_pos_ws //semantic caster_vp_main.camera_pos_ws //semantic caster_vp_main.bone_matrixes //var float4x4 view_proj : : _view_proj1[0], 4 : 3 : 1 //var float4 light_pos_ws : : _light_pos_ws1 : 4 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 5 : 1 //var float3x4 bone_matrixes[0] : : _bone_matrixes2[0], 3 : 8 : 1 //var float3x4 bone_matrixes[1] : : _bone_matrixes2[3], 3 : 8 : 1 //var float3x4 bone_matrixes[2] : : _bone_matrixes2[6], 3 : 8 : 1 //var float3x4 bone_matrixes[3] : : _bone_matrixes2[9], 3 : 8 : 1 //var float3x4 bone_matrixes[4] : : _bone_matrixes2[12], 3 : 8 : 1 //var float3x4 bone_matrixes[5] : : _bone_matrixes2[15], 3 : 8 : 1 //var float3x4 bone_matrixes[6] : : _bone_matrixes2[18], 3 : 8 : 1 //var float3x4 bone_matrixes[7] : : _bone_matrixes2[21], 3 : 8 : 1 //var float3x4 bone_matrixes[8] : : _bone_matrixes2[24], 3 : 8 : 1 //var float3x4 bone_matrixes[9] : : _bone_matrixes2[27], 3 : 8 : 1 //var float3x4 bone_matrixes[10] : : _bone_matrixes2[30], 3 : 8 : 1 //var float3x4 bone_matrixes[11] : : _bone_matrixes2[33], 3 : 8 : 1 //var float3x4 bone_matrixes[12] : : _bone_matrixes2[36], 3 : 8 : 1 //var float3x4 bone_matrixes[13] : : _bone_matrixes2[39], 3 : 8 : 1 //var float3x4 bone_matrixes[14] : : _bone_matrixes2[42], 3 : 8 : 1 //var float3x4 bone_matrixes[15] : : _bone_matrixes2[45], 3 : 8 : 1 //var float3x4 bone_matrixes[16] : : _bone_matrixes2[48], 3 : 8 : 1 //var float3x4 bone_matrixes[17] : : _bone_matrixes2[51], 3 : 8 : 1 //var float3x4 bone_matrixes[18] : : _bone_matrixes2[54], 3 : 8 : 1 //var float3x4 bone_matrixes[19] : : _bone_matrixes2[57], 3 : 8 : 1 //var float3x4 bone_matrixes[20] : : _bone_matrixes2[60], 3 : 8 : 1 //var float3x4 bone_matrixes[21] : : _bone_matrixes2[63], 3 : 8 : 1 //var float3x4 bone_matrixes[22] : : _bone_matrixes2[66], 3 : 8 : 1 //var float3x4 bone_matrixes[23] : : _bone_matrixes2[69], 3 : 8 : 1 //var float3x4 bone_matrixes[24] : : _bone_matrixes2[72], 3 : 8 : 1 //var float3x4 bone_matrixes[25] : : _bone_matrixes2[75], 3 : 8 : 1 //var float3x4 bone_matrixes[26] : : _bone_matrixes2[78], 3 : 8 : 1 //var float3x4 bone_matrixes[27] : : _bone_matrixes2[81], 3 : 8 : 1 //var float3x4 bone_matrixes[28] : : _bone_matrixes2[84], 3 : 8 : 1 //var float3x4 bone_matrixes[29] : : _bone_matrixes2[87], 3 : 8 : 1 //var float3x4 bone_matrixes[30] : : _bone_matrixes2[90], 3 : 8 : 1 //var float3x4 bone_matrixes[31] : : _bone_matrixes2[93], 3 : 8 : 1 //var float3x4 bone_matrixes[32] : : _bone_matrixes2[96], 3 : 8 : 1 //var float3x4 bone_matrixes[33] : : _bone_matrixes2[99], 3 : 8 : 1 //var float3x4 bone_matrixes[34] : : _bone_matrixes2[102], 3 : 8 : 1 //var float3x4 bone_matrixes[35] : : _bone_matrixes2[105], 3 : 8 : 1 //var float3x4 bone_matrixes[36] : : _bone_matrixes2[108], 3 : 8 : 1 //var float3x4 bone_matrixes[37] : : _bone_matrixes2[111], 3 : 8 : 1 //var float3x4 bone_matrixes[38] : : _bone_matrixes2[114], 3 : 8 : 1 //var float3x4 bone_matrixes[39] : : _bone_matrixes2[117], 3 : 8 : 1 //var float3x4 bone_matrixes[40] : : _bone_matrixes2[120], 3 : 8 : 1 //var float3x4 bone_matrixes[41] : : _bone_matrixes2[123], 3 : 8 : 1 //var float3x4 bone_matrixes[42] : : _bone_matrixes2[126], 3 : 8 : 1 //var float3x4 bone_matrixes[43] : : _bone_matrixes2[129], 3 : 8 : 1 //var float3x4 bone_matrixes[44] : : _bone_matrixes2[132], 3 : 8 : 1 //var float3x4 bone_matrixes[45] : : _bone_matrixes2[135], 3 : 8 : 1 //var float3x4 bone_matrixes[46] : : _bone_matrixes2[138], 3 : 8 : 1 //var float3x4 bone_matrixes[47] : : _bone_matrixes2[141], 3 : 8 : 1 //var float3x4 bone_matrixes[48] : : _bone_matrixes2[144], 3 : 8 : 1 //var float3x4 bone_matrixes[49] : : _bone_matrixes2[147], 3 : 8 : 1 //var float3x4 bone_matrixes[50] : : _bone_matrixes2[150], 3 : 8 : 1 //var float3x4 bone_matrixes[51] : : _bone_matrixes2[153], 3 : 8 : 1 //var float3x4 bone_matrixes[52] : : _bone_matrixes2[156], 3 : 8 : 1 //var float3x4 bone_matrixes[53] : : _bone_matrixes2[159], 3 : 8 : 1 //var float3x4 bone_matrixes[54] : : _bone_matrixes2[162], 3 : 8 : 1 //var float3x4 bone_matrixes[55] : : _bone_matrixes2[165], 3 : 8 : 1 //var float3x4 bone_matrixes[56] : : _bone_matrixes2[168], 3 : 8 : 1 //var float3x4 bone_matrixes[57] : : _bone_matrixes2[171], 3 : 8 : 1 //var float3x4 bone_matrixes[58] : : _bone_matrixes2[174], 3 : 8 : 1 //var float3x4 bone_matrixes[59] : : _bone_matrixes2[177], 3 : 8 : 1 //var float3x4 bone_matrixes[60] : : _bone_matrixes2[180], 3 : 8 : 1 //var float3x4 bone_matrixes[61] : : _bone_matrixes2[183], 3 : 8 : 1 //var float3x4 bone_matrixes[62] : : _bone_matrixes2[186], 3 : 8 : 1 //var float3x4 bone_matrixes[63] : : _bone_matrixes2[189], 3 : 8 : 1 //var float3x4 bone_matrixes[64] : : _bone_matrixes2[192], 3 : 8 : 1 //var float3x4 bone_matrixes[65] : : _bone_matrixes2[195], 3 : 8 : 1 //var float3x4 bone_matrixes[66] : : _bone_matrixes2[198], 3 : 8 : 1 //var float3x4 bone_matrixes[67] : : _bone_matrixes2[201], 3 : 8 : 1 //var float3x4 bone_matrixes[68] : : _bone_matrixes2[204], 3 : 8 : 1 //var float3x4 bone_matrixes[69] : : _bone_matrixes2[207], 3 : 8 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 1 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 2 : 1 //var float4 bone : $vin.BLENDINDICES : $BLENDINDICES : 6 : 1 //var float4 bone_weights : $vin.BLENDWEIGHT : $BLENDWEIGHT : 7 : 1 //var float2 uv0_ : $vout.TEXCOORD0 : TEX0 : 9 : 1 //var float light_dist_ : $vout.TEXCOORD1 : TEX1 : 10 : 1 //var float visibility_ : $vout.TEXCOORD2 : TEX2 : 11 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 12 : 1 vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform vec4 _view_proj1[4]; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.w*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.w*_r0024; _total0014 = _total0014 + BLENDWEIGHT.w; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Cleaned Cg output for cast_v:D_O_4_0_W: vec4 _for_rasteriser1; float _light_dist_1; vec2 _uv0_1; float _visibility_1; float _TMP1; vec3 _TMP0; float _TMP5; uniform mat4 _view_proj1; uniform vec4 _light_pos_ws1; uniform vec3 _camera_pos_ws1; uniform vec4 _bone_matrixes2[210]; vec3 _pos_ws0014; vec3 _normal_ws0014; float _total0014; vec3 _r0016; vec4 _M0016[3]; vec4 _v0016; vec3 _r0024; vec4 _M0024[3]; vec4 _v0024; float _cam_dist0040; vec3 _a0042; float _TMP43; float _x0044; vec4 _r0050; vec4 _v0050; attribute vec4 BLENDINDICES; attribute vec4 BLENDWEIGHT; // main procedure, the original name was caster_vp_main void main() { vec3 _pos_ws1; vec3 _normal_os1; _uv0_1 = gl_MultiTexCoord0.xy; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = BLENDWEIGHT.x*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.x) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = BLENDWEIGHT.x*_r0024; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.y*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.y) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.y*_r0024; _total0014 = BLENDWEIGHT.x + BLENDWEIGHT.y; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.z*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.z) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.z*_r0024; _total0014 = _total0014 + BLENDWEIGHT.z; _M0016[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0016[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0016[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0016 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0016.x = dot(_M0016[0], _v0016); _r0016.y = dot(_M0016[1], _v0016); _r0016.z = dot(_M0016[2], _v0016); _pos_ws0014 = _pos_ws0014 + BLENDWEIGHT.w*_r0016; _M0024[0] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 0)]; _M0024[1] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 1)]; _M0024[2] = _bone_matrixes2[(3*int(BLENDINDICES.w) + 2)]; _v0024 = vec4(_normal_os1.x, _normal_os1.y, _normal_os1.z, 0.00000000E+00); _r0024.x = dot(_M0024[0], _v0024); _r0024.y = dot(_M0024[1], _v0024); _r0024.z = dot(_M0024[2], _v0024); _normal_ws0014 = _normal_ws0014 + BLENDWEIGHT.w*_r0024; _total0014 = _total0014 + BLENDWEIGHT.w; _pos_ws0014 = _pos_ws0014/vec3(_total0014, _total0014, _total0014); _a0042 = _camera_pos_ws1 - _pos_ws0014; _cam_dist0040 = dot(_a0042, _normal_ws0014); _x0044 = (_cam_dist0040/4.00000000E+02)*1.00000001E-01; _TMP5 = min(1.00000001E-01, _x0044); _TMP43 = max(1.00000005E-03, _TMP5); _TMP0 = _TMP43*_normal_ws0014; _pos_ws1 = _pos_ws0014 + _TMP0; _v0050 = vec4(_pos_ws1.x, _pos_ws1.y, _pos_ws1.z, 1.00000000E+00); _r0050.x = dot(_view_proj1[0], _v0050); _r0050.y = dot(_view_proj1[1], _v0050); _r0050.z = dot(_view_proj1[2], _v0050); _r0050.w = dot(_view_proj1[3], _v0050); _for_rasteriser1 = _r0050; _TMP1 = dot(_pos_ws1, _light_pos_ws1.xyz); _light_dist_1 = -_TMP1; _visibility_1 = gl_MultiTexCoord1.x; gl_TexCoord[2].x = gl_MultiTexCoord1.x; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[1].x = _light_dist_1; gl_Position = _r0050; } // main end  Getting default parameters for cast_v:D_O_4_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _bone_matrixes2 with bone_matrixes replaced _bone_matrixes2[0] with bone_matrixes[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _light_pos_ws1 with light_pos_ws replaced _light_pos_ws1[0] with light_pos_ws[0] replaced _view_proj1 with view_proj replaced _view_proj1[0] with view_proj[0] Getting default parameters for cast_v:D_O_4_0_W Delegating... Getting default parameters for cast_v:D_O_4_0_W Delegating... Getting default parameters for cast_v:D_O_4_0_W Delegating... Cg output for cast_f:D_O_4_0_W: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry caster_fp_main -O3 -DUSE_DIFFUSE_MAP=1 -DUSE_OVERLAY_OFFSET=1 -DUSE_STIPPLE_TEXTURE=1 -DBLENDED_BONES=4 -DWORLD_GEOMETRY=1 -DSPREAD=8 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DCASTER_PARAMS=uniform sampler2D stipple_map : register(s0),uniform sampler2D diffuse_map : register(s1), //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program caster_fp_main //semantic caster_fp_main.stipple_map : TEXUNIT0 //semantic caster_fp_main.diffuse_map : TEXUNIT1 //semantic caster_fp_main.alpha_rej //semantic caster_fp_main.bias_offset //var sampler2D stipple_map : TEXUNIT0 : _stipple_map1 0 : 4 : 1 //var sampler2D diffuse_map : TEXUNIT1 : _diffuse_map1 1 : 5 : 1 //var float alpha_rej : : _alpha_rej1 : 6 : 1 //var float bias_offset : : _bias_offset1 : 7 : 1 //var float2 uv0_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float light_dist_ : $vin.TEXCOORD1 : TEX1 : 1 : 1 //var float2 screen_pos_ : $vin.WPOS : WPOS : 2 : 1 //var float visibility_ : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float pixel : $vout.COLOR : COL : 8 : 1 #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Cleaned Cg output for cast_f:D_O_4_0_W: #extension GL_EXT_gpu_shader4 : enable float _pixel1; float _light_dist_1; vec4 _TMP5; float _TMP4; float _TMP3; float _TMP1; float _TMP2; float _TMP0; uniform sampler2D _stipple_map1; uniform sampler2D _diffuse_map1; uniform float _alpha_rej1; uniform float _bias_offset1; float _a0020; float _v0024; vec2 _uv0024; vec4 _TMP25; vec2 _uv0026; // main procedure, the original name was caster_fp_main void main() { float _auto_bias; float _v1; int _x1; int _y1; _TMP0 = dFdx(gl_TexCoord[1].x); _TMP1 = abs(_TMP0); _TMP2 = dFdy(gl_TexCoord[1].x); _TMP3 = abs(_TMP2); _auto_bias = _TMP1 + _TMP3; _a0020 = _bias_offset1 + 8.50000000E+00*_auto_bias; _TMP4 = min(_a0020, 1.00000000E+00); _light_dist_1 = gl_TexCoord[1].x + _TMP4; _TMP5 = texture2D(_diffuse_map1, gl_TexCoord[0].xy); if (_TMP5.w <= _alpha_rej1) { // if begin discard; } // end if _v1 = gl_TexCoord[2].x + 1.95312500E-03; if (_v1 < 1.00000000E+00) { // if begin _x1 = int(gl_FragCoord.x)%8; _y1 = int(gl_FragCoord.y)%8; _v0024 = _v1*1.60000000E+01; _uv0024 = vec2(float(_x1), float(_y1)); _uv0024.x = _uv0024.x + float((8.00000000E+00*float((int(_v0024)%4)))); _uv0024.y = _uv0024.y + float((8.00000000E+00*float(int((_v0024/4.00000000E+00))))); _uv0026 = _uv0024/3.20000000E+01; _TMP25 = texture2DGrad(_stipple_map1, _uv0026, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP25.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _pixel1 = _light_dist_1/5.00000000E+03; gl_FragColor.x = _pixel1; } // main end  Getting default parameters for cast_f:D_O_4_0_W Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _bias_offset1 with bias_offset replaced _bias_offset1[0] with bias_offset[0] replaced _diffuse_map1 with diffuse_map replaced _diffuse_map1[0] with diffuse_map[0] replaced _stipple_map1 with stipple_map replaced _stipple_map1[0] with stipple_map[0] Getting default parameters for cast_f:D_O_4_0_W Delegating... Compiling shader: particle_v:O_e particle_f:O_e Cg output for particle_v:O_e: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DOPACITY=0 -DEMISSIVE=0 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.scene_ambient_colour //semantic vp_main.sun_diffuse_colour //semantic vp_main.the_fog_params //semantic vp_main.the_fog_colour //semantic vp_main.misc //var float4x4 view : : _view1[0], 4 : 3 : 1 //var float4x4 proj : : _proj1[0], 4 : 4 : 1 //var float3 scene_ambient_colour : : _scene_ambient_colour1 : 5 : 1 //var float3 sun_diffuse_colour : : _sun_diffuse_colour1 : 6 : 1 //var float4 the_fog_params : : _the_fog_params1 : 7 : 1 //var float3 the_fog_colour : : _the_fog_colour1 : 8 : 1 //var float3 misc : : _misc1 : 9 : 1 //var float4 pos_ws : $vin.POSITION : ATTR0 : 0 : 1 //var float4 vcol : $vin.COLOR0 : ATTR3 : 1 : 1 //var float2 uv : $vin.TEXCOORD0 : ATTR8 : 2 : 1 //var float2 uv_ : $vout.TEXCOORD0 : TEX0 : 10 : 1 //var float3 deferred_uv : $vout.TEXCOORD1 : TEX1 : 11 : 1 //var float particle_front_dist : $vout.TEXCOORD2 : TEX2 : 12 : 1 //var float particle_depth : $vout.TEXCOORD3 : TEX3 : 13 : 1 //var float4 colour_ : $vout.COLOR0 : COL0 : 14 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 15 : 1 vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP5; float _TMP3; float _TMP2; float _TMP1; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; uniform vec3 _scene_ambient_colour1; uniform vec3 _sun_diffuse_colour1; uniform vec4 _the_fog_params1; uniform vec3 _the_fog_colour1; uniform vec3 _misc1; vec4 _r0017; vec4 _v0017; float _clarity0035; float _cam_dist0035; float _TMP36; float _x0037; float _TMP40; vec4 _r0049; vec4 _v0049; // main procedure, the original name was vp_main void main() { vec3 _colour; float _cam_dist1; _v0017 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0017.x = dot(_view1[0], _v0017); _r0017.y = dot(_view1[1], _v0017); _r0017.z = dot(_view1[2], _v0017); _colour = gl_Color.xyz*(_misc1.y*_scene_ambient_colour1 + _sun_diffuse_colour1); _TMP1 = pow(_colour.x, 2.20000005E+00); _TMP2 = pow(_colour.y, 2.20000005E+00); _TMP3 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP1, _TMP2, _TMP3); _cam_dist0035 = -_r0017.z; _clarity0035 = _the_fog_params1.x*_cam_dist0035; _x0037 = -_clarity0035*_clarity0035; _TMP36 = pow(2.71828198E+00, _x0037); _TMP5 = min(1.00000000E+00, _TMP36); _TMP40 = max(0.00000000E+00, _TMP5); _colour = _the_fog_colour1 + _TMP40*(_colour - _the_fog_colour1); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0017.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, gl_Color.w); _uv_1 = gl_MultiTexCoord0.xy; _v0049 = vec4(_r0017.x, _r0017.y, _r0017.z, 1.00000000E+00); _r0049.x = dot(_proj1[0], _v0049); _r0049.y = dot(_proj1[1], _v0049); _r0049.z = dot(_proj1[2], _v0049); _r0049.w = dot(_proj1[3], _v0049); _for_rasteriser1 = _r0049; _deferred_uv1 = _r0049.xyw; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0049.xyw; gl_FrontColor = _colour_1; gl_Position = _r0049; } // main end  Cleaned Cg output for particle_v:O_e: vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP5; float _TMP3; float _TMP2; float _TMP1; uniform mat4 _view1; uniform mat4 _proj1; uniform vec3 _scene_ambient_colour1; uniform vec3 _sun_diffuse_colour1; uniform vec4 _the_fog_params1; uniform vec3 _the_fog_colour1; uniform vec3 _misc1; vec4 _r0017; vec4 _v0017; float _clarity0035; float _cam_dist0035; float _TMP36; float _x0037; float _TMP40; vec4 _r0049; vec4 _v0049; // main procedure, the original name was vp_main void main() { vec3 _colour; float _cam_dist1; _v0017 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0017.x = dot(_view1[0], _v0017); _r0017.y = dot(_view1[1], _v0017); _r0017.z = dot(_view1[2], _v0017); _colour = gl_Color.xyz*(_misc1.y*_scene_ambient_colour1 + _sun_diffuse_colour1); _TMP1 = pow(_colour.x, 2.20000005E+00); _TMP2 = pow(_colour.y, 2.20000005E+00); _TMP3 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP1, _TMP2, _TMP3); _cam_dist0035 = -_r0017.z; _clarity0035 = _the_fog_params1.x*_cam_dist0035; _x0037 = -_clarity0035*_clarity0035; _TMP36 = pow(2.71828198E+00, _x0037); _TMP5 = min(1.00000000E+00, _TMP36); _TMP40 = max(0.00000000E+00, _TMP5); _colour = _the_fog_colour1 + _TMP40*(_colour - _the_fog_colour1); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0017.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, gl_Color.w); _uv_1 = gl_MultiTexCoord0.xy; _v0049 = vec4(_r0017.x, _r0017.y, _r0017.z, 1.00000000E+00); _r0049.x = dot(_proj1[0], _v0049); _r0049.y = dot(_proj1[1], _v0049); _r0049.z = dot(_proj1[2], _v0049); _r0049.w = dot(_proj1[3], _v0049); _for_rasteriser1 = _r0049; _deferred_uv1 = _r0049.xyw; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0049.xyw; gl_FrontColor = _colour_1; gl_Position = _r0049; } // main end  Getting default parameters for particle_v:O_e Delegating... Replacing parameters... Replacing parameter names. replaced _misc1 with misc replaced _misc1[0] with misc[0] replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _scene_ambient_colour1 with scene_ambient_colour replaced _scene_ambient_colour1[0] with scene_ambient_colour[0] replaced _sun_diffuse_colour1 with sun_diffuse_colour replaced _sun_diffuse_colour1[0] with sun_diffuse_colour[0] replaced _the_fog_colour1 with the_fog_colour replaced _the_fog_colour1[0] with the_fog_colour[0] replaced _the_fog_params1 with the_fog_params replaced _the_fog_params1[0] with the_fog_params[0] replaced _view1 with view replaced _view1[0] with view[0] Getting default parameters for particle_v:O_e Delegating... Getting default parameters for particle_v:O_e Delegating... Getting default parameters for particle_v:O_e Delegating... Getting default parameters for particle_v:O_e Delegating... Getting default parameters for particle_v:O_e Delegating... Getting default parameters for particle_v:O_e Delegating... Cg output for particle_f:O_e: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DOPACITY=0 -DEMISSIVE=0 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.tex0 : TEXUNIT0 //semantic fp_main.ptex : TEXUNIT1 //semantic fp_main.alpha_rej //semantic fp_main.far_clip_distance //semantic fp_main.viewport_size //semantic fp_main.render_target_flipping //var sampler2D tex0 : TEXUNIT0 : _tex01 0 : 5 : 1 //var sampler2D ptex : TEXUNIT1 : _ptex1 1 : 6 : 1 //var float alpha_rej : : _alpha_rej1 : 7 : 1 //var float far_clip_distance : : _far_clip_distance1 : 8 : 1 //var float render_target_flipping : : _render_target_flipping1 : 10 : 1 //var float4 colour : $vin.COLOR0 : COL0 : 0 : 1 //var float2 uv_ : $vin.TEXCOORD0 : TEX0 : 1 : 1 //var float3 deferred_uv : $vin.TEXCOORD1 : TEX1 : 2 : 1 //var float particle_front_dist : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float particle_depth : $vin.TEXCOORD3 : TEX3 : 4 : 1 //var float4 pixel : $vout.COLOR0 : COL : 11 : 1 vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _texel.xyz = _texel.xyz/_texel.www; _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Cleaned Cg output for particle_f:O_e: vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _texel.xyz = _texel.xyz/_texel.www; _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Getting default parameters for particle_f:O_e Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _ptex1 with ptex replaced _ptex1[0] with ptex[0] replaced _render_target_flipping1 with render_target_flipping replaced _render_target_flipping1[0] with render_target_flipping[0] replaced _tex01 with tex0 replaced _tex01[0] with tex0[0] Getting default parameters for particle_f:O_e Delegating... Getting default parameters for particle_f:O_e Delegating... Compiling shader: particle_v:O_E particle_f:O_E Cg output for particle_v:O_E: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DOPACITY=0 -DEMISSIVE=1 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.scene_ambient_colour //semantic vp_main.sun_diffuse_colour //semantic vp_main.the_fog_params //semantic vp_main.the_fog_colour //semantic vp_main.misc //var float4x4 view : : _view1[0], 4 : 3 : 1 //var float4x4 proj : : _proj1[0], 4 : 4 : 1 //var float4 the_fog_params : : _the_fog_params1 : 7 : 1 //var float3 the_fog_colour : : _the_fog_colour1 : 8 : 1 //var float4 pos_ws : $vin.POSITION : ATTR0 : 0 : 1 //var float4 vcol : $vin.COLOR0 : ATTR3 : 1 : 1 //var float2 uv : $vin.TEXCOORD0 : ATTR8 : 2 : 1 //var float2 uv_ : $vout.TEXCOORD0 : TEX0 : 10 : 1 //var float3 deferred_uv : $vout.TEXCOORD1 : TEX1 : 11 : 1 //var float particle_front_dist : $vout.TEXCOORD2 : TEX2 : 12 : 1 //var float particle_depth : $vout.TEXCOORD3 : TEX3 : 13 : 1 //var float4 colour_ : $vout.COLOR0 : COL0 : 14 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 15 : 1 vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP5; float _TMP3; float _TMP2; float _TMP1; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; uniform vec4 _the_fog_params1; uniform vec3 _the_fog_colour1; vec4 _r0017; vec4 _v0017; float _clarity0035; float _cam_dist0035; float _TMP36; float _x0037; float _TMP40; vec4 _r0049; vec4 _v0049; // main procedure, the original name was vp_main void main() { vec3 _colour; float _cam_dist1; _v0017 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0017.x = dot(_view1[0], _v0017); _r0017.y = dot(_view1[1], _v0017); _r0017.z = dot(_view1[2], _v0017); _colour = gl_Color.xyz*vec3( 8.00000000E+00, 8.00000000E+00, 8.00000000E+00); _TMP1 = pow(_colour.x, 2.20000005E+00); _TMP2 = pow(_colour.y, 2.20000005E+00); _TMP3 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP1, _TMP2, _TMP3); _cam_dist0035 = -_r0017.z; _clarity0035 = _the_fog_params1.x*_cam_dist0035; _x0037 = -_clarity0035*_clarity0035; _TMP36 = pow(2.71828198E+00, _x0037); _TMP5 = min(1.00000000E+00, _TMP36); _TMP40 = max(0.00000000E+00, _TMP5); _colour = _the_fog_colour1 + _TMP40*(_colour - _the_fog_colour1); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0017.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, gl_Color.w); _uv_1 = gl_MultiTexCoord0.xy; _v0049 = vec4(_r0017.x, _r0017.y, _r0017.z, 1.00000000E+00); _r0049.x = dot(_proj1[0], _v0049); _r0049.y = dot(_proj1[1], _v0049); _r0049.z = dot(_proj1[2], _v0049); _r0049.w = dot(_proj1[3], _v0049); _for_rasteriser1 = _r0049; _deferred_uv1 = _r0049.xyw; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0049.xyw; gl_FrontColor = _colour_1; gl_Position = _r0049; } // main end  Cleaned Cg output for particle_v:O_E: vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP5; float _TMP3; float _TMP2; float _TMP1; uniform mat4 _view1; uniform mat4 _proj1; uniform vec4 _the_fog_params1; uniform vec3 _the_fog_colour1; vec4 _r0017; vec4 _v0017; float _clarity0035; float _cam_dist0035; float _TMP36; float _x0037; float _TMP40; vec4 _r0049; vec4 _v0049; // main procedure, the original name was vp_main void main() { vec3 _colour; float _cam_dist1; _v0017 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0017.x = dot(_view1[0], _v0017); _r0017.y = dot(_view1[1], _v0017); _r0017.z = dot(_view1[2], _v0017); _colour = gl_Color.xyz*vec3( 8.00000000E+00, 8.00000000E+00, 8.00000000E+00); _TMP1 = pow(_colour.x, 2.20000005E+00); _TMP2 = pow(_colour.y, 2.20000005E+00); _TMP3 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP1, _TMP2, _TMP3); _cam_dist0035 = -_r0017.z; _clarity0035 = _the_fog_params1.x*_cam_dist0035; _x0037 = -_clarity0035*_clarity0035; _TMP36 = pow(2.71828198E+00, _x0037); _TMP5 = min(1.00000000E+00, _TMP36); _TMP40 = max(0.00000000E+00, _TMP5); _colour = _the_fog_colour1 + _TMP40*(_colour - _the_fog_colour1); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0017.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, gl_Color.w); _uv_1 = gl_MultiTexCoord0.xy; _v0049 = vec4(_r0017.x, _r0017.y, _r0017.z, 1.00000000E+00); _r0049.x = dot(_proj1[0], _v0049); _r0049.y = dot(_proj1[1], _v0049); _r0049.z = dot(_proj1[2], _v0049); _r0049.w = dot(_proj1[3], _v0049); _for_rasteriser1 = _r0049; _deferred_uv1 = _r0049.xyw; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0049.xyw; gl_FrontColor = _colour_1; gl_Position = _r0049; } // main end  Getting default parameters for particle_v:O_E Delegating... Replacing parameters... Replacing parameter names. replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _the_fog_colour1 with the_fog_colour replaced _the_fog_colour1[0] with the_fog_colour[0] replaced _the_fog_params1 with the_fog_params replaced _the_fog_params1[0] with the_fog_params[0] replaced _view1 with view replaced _view1[0] with view[0] Getting default parameters for particle_v:O_E Delegating... Getting default parameters for particle_v:O_E Delegating... Getting default parameters for particle_v:O_E Delegating... Cg output for particle_f:O_E: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DOPACITY=0 -DEMISSIVE=1 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.tex0 : TEXUNIT0 //semantic fp_main.ptex : TEXUNIT1 //semantic fp_main.alpha_rej //semantic fp_main.far_clip_distance //semantic fp_main.viewport_size //semantic fp_main.render_target_flipping //var sampler2D tex0 : TEXUNIT0 : _tex01 0 : 5 : 1 //var sampler2D ptex : TEXUNIT1 : _ptex1 1 : 6 : 1 //var float alpha_rej : : _alpha_rej1 : 7 : 1 //var float far_clip_distance : : _far_clip_distance1 : 8 : 1 //var float render_target_flipping : : _render_target_flipping1 : 10 : 1 //var float4 colour : $vin.COLOR0 : COL0 : 0 : 1 //var float2 uv_ : $vin.TEXCOORD0 : TEX0 : 1 : 1 //var float3 deferred_uv : $vin.TEXCOORD1 : TEX1 : 2 : 1 //var float particle_front_dist : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float particle_depth : $vin.TEXCOORD3 : TEX3 : 4 : 1 //var float4 pixel : $vout.COLOR0 : COL : 11 : 1 vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _texel.xyz = _texel.xyz/_texel.www; _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Cleaned Cg output for particle_f:O_E: vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _texel.xyz = _texel.xyz/_texel.www; _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Getting default parameters for particle_f:O_E Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _ptex1 with ptex replaced _ptex1[0] with ptex[0] replaced _render_target_flipping1 with render_target_flipping replaced _render_target_flipping1[0] with render_target_flipping[0] replaced _tex01 with tex0 replaced _tex01[0] with tex0[0] Getting default parameters for particle_f:O_E Delegating... Getting default parameters for particle_f:O_E Delegating... Compiling shader: particle_v:A_e particle_f:A_e Cg output for particle_v:A_e: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DOPACITY=1 -DEMISSIVE=0 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.scene_ambient_colour //semantic vp_main.sun_diffuse_colour //semantic vp_main.the_fog_params //semantic vp_main.the_fog_colour //semantic vp_main.misc //var float4x4 view : : _view1[0], 4 : 3 : 1 //var float4x4 proj : : _proj1[0], 4 : 4 : 1 //var float3 scene_ambient_colour : : _scene_ambient_colour1 : 5 : 1 //var float3 sun_diffuse_colour : : _sun_diffuse_colour1 : 6 : 1 //var float4 the_fog_params : : _the_fog_params1 : 7 : 1 //var float3 the_fog_colour : : _the_fog_colour1 : 8 : 1 //var float3 misc : : _misc1 : 9 : 1 //var float4 pos_ws : $vin.POSITION : ATTR0 : 0 : 1 //var float4 vcol : $vin.COLOR0 : ATTR3 : 1 : 1 //var float2 uv : $vin.TEXCOORD0 : ATTR8 : 2 : 1 //var float2 uv_ : $vout.TEXCOORD0 : TEX0 : 10 : 1 //var float3 deferred_uv : $vout.TEXCOORD1 : TEX1 : 11 : 1 //var float particle_front_dist : $vout.TEXCOORD2 : TEX2 : 12 : 1 //var float particle_depth : $vout.TEXCOORD3 : TEX3 : 13 : 1 //var float4 colour_ : $vout.COLOR0 : COL0 : 14 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 15 : 1 vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP6; float _TMP4; float _TMP3; float _TMP2; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; uniform vec3 _scene_ambient_colour1; uniform vec3 _sun_diffuse_colour1; uniform vec4 _the_fog_params1; uniform vec3 _the_fog_colour1; uniform vec3 _misc1; vec4 _r0018; vec4 _v0018; float _clarity0036; float _cam_dist0036; float _TMP37; float _x0038; float _TMP41; vec4 _r0050; vec4 _v0050; // main procedure, the original name was vp_main void main() { vec3 _colour; float _cam_dist1; _v0018 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0018.x = dot(_view1[0], _v0018); _r0018.y = dot(_view1[1], _v0018); _r0018.z = dot(_view1[2], _v0018); _colour = gl_Color.xyz*(_misc1.y*_scene_ambient_colour1 + _sun_diffuse_colour1); _TMP2 = pow(_colour.x, 2.20000005E+00); _TMP3 = pow(_colour.y, 2.20000005E+00); _TMP4 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP2, _TMP3, _TMP4); _cam_dist0036 = -_r0018.z; _clarity0036 = _the_fog_params1.x*_cam_dist0036; _x0038 = -_clarity0036*_clarity0036; _TMP37 = pow(2.71828198E+00, _x0038); _TMP6 = min(1.00000000E+00, _TMP37); _TMP41 = max(0.00000000E+00, _TMP6); _colour = _the_fog_colour1 + _TMP41*(_colour - _the_fog_colour1); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0018.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, gl_Color.w); _uv_1 = gl_MultiTexCoord0.xy; _v0050 = vec4(_r0018.x, _r0018.y, _r0018.z, 1.00000000E+00); _r0050.x = dot(_proj1[0], _v0050); _r0050.y = dot(_proj1[1], _v0050); _r0050.z = dot(_proj1[2], _v0050); _r0050.w = dot(_proj1[3], _v0050); _for_rasteriser1 = _r0050; _deferred_uv1 = _r0050.xyw; _for_rasteriser1.z = -_r0050.w + 3.33333337E-05; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0050.xyw; gl_FrontColor = _colour_1; gl_Position = _for_rasteriser1; } // main end  Cleaned Cg output for particle_v:A_e: vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP6; float _TMP4; float _TMP3; float _TMP2; uniform mat4 _view1; uniform mat4 _proj1; uniform vec3 _scene_ambient_colour1; uniform vec3 _sun_diffuse_colour1; uniform vec4 _the_fog_params1; uniform vec3 _the_fog_colour1; uniform vec3 _misc1; vec4 _r0018; vec4 _v0018; float _clarity0036; float _cam_dist0036; float _TMP37; float _x0038; float _TMP41; vec4 _r0050; vec4 _v0050; // main procedure, the original name was vp_main void main() { vec3 _colour; float _cam_dist1; _v0018 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0018.x = dot(_view1[0], _v0018); _r0018.y = dot(_view1[1], _v0018); _r0018.z = dot(_view1[2], _v0018); _colour = gl_Color.xyz*(_misc1.y*_scene_ambient_colour1 + _sun_diffuse_colour1); _TMP2 = pow(_colour.x, 2.20000005E+00); _TMP3 = pow(_colour.y, 2.20000005E+00); _TMP4 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP2, _TMP3, _TMP4); _cam_dist0036 = -_r0018.z; _clarity0036 = _the_fog_params1.x*_cam_dist0036; _x0038 = -_clarity0036*_clarity0036; _TMP37 = pow(2.71828198E+00, _x0038); _TMP6 = min(1.00000000E+00, _TMP37); _TMP41 = max(0.00000000E+00, _TMP6); _colour = _the_fog_colour1 + _TMP41*(_colour - _the_fog_colour1); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0018.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, gl_Color.w); _uv_1 = gl_MultiTexCoord0.xy; _v0050 = vec4(_r0018.x, _r0018.y, _r0018.z, 1.00000000E+00); _r0050.x = dot(_proj1[0], _v0050); _r0050.y = dot(_proj1[1], _v0050); _r0050.z = dot(_proj1[2], _v0050); _r0050.w = dot(_proj1[3], _v0050); _for_rasteriser1 = _r0050; _deferred_uv1 = _r0050.xyw; _for_rasteriser1.z = -_r0050.w + 3.33333337E-05; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0050.xyw; gl_FrontColor = _colour_1; gl_Position = _for_rasteriser1; } // main end  Getting default parameters for particle_v:A_e Delegating... Replacing parameters... Replacing parameter names. replaced _misc1 with misc replaced _misc1[0] with misc[0] replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _scene_ambient_colour1 with scene_ambient_colour replaced _scene_ambient_colour1[0] with scene_ambient_colour[0] replaced _sun_diffuse_colour1 with sun_diffuse_colour replaced _sun_diffuse_colour1[0] with sun_diffuse_colour[0] replaced _the_fog_colour1 with the_fog_colour replaced _the_fog_colour1[0] with the_fog_colour[0] replaced _the_fog_params1 with the_fog_params replaced _the_fog_params1[0] with the_fog_params[0] replaced _view1 with view replaced _view1[0] with view[0] Getting default parameters for particle_v:A_e Delegating... Getting default parameters for particle_v:A_e Delegating... Getting default parameters for particle_v:A_e Delegating... Getting default parameters for particle_v:A_e Delegating... Getting default parameters for particle_v:A_e Delegating... Getting default parameters for particle_v:A_e Delegating... Cg output for particle_f:A_e: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DOPACITY=1 -DEMISSIVE=0 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.tex0 : TEXUNIT0 //semantic fp_main.ptex : TEXUNIT1 //semantic fp_main.alpha_rej //semantic fp_main.far_clip_distance //semantic fp_main.viewport_size //semantic fp_main.render_target_flipping //var sampler2D tex0 : TEXUNIT0 : _tex01 0 : 5 : 1 //var sampler2D ptex : TEXUNIT1 : _ptex1 1 : 6 : 1 //var float alpha_rej : : _alpha_rej1 : 7 : 1 //var float far_clip_distance : : _far_clip_distance1 : 8 : 1 //var float render_target_flipping : : _render_target_flipping1 : 10 : 1 //var float4 colour : $vin.COLOR0 : COL0 : 0 : 1 //var float2 uv_ : $vin.TEXCOORD0 : TEX0 : 1 : 1 //var float3 deferred_uv : $vin.TEXCOORD1 : TEX1 : 2 : 1 //var float particle_front_dist : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float particle_depth : $vin.TEXCOORD3 : TEX3 : 4 : 1 //var float4 pixel : $vout.COLOR0 : COL : 11 : 1 vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _texel.xyz = _texel.xyz/_texel.www; _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Cleaned Cg output for particle_f:A_e: vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _texel.xyz = _texel.xyz/_texel.www; _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Getting default parameters for particle_f:A_e Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _ptex1 with ptex replaced _ptex1[0] with ptex[0] replaced _render_target_flipping1 with render_target_flipping replaced _render_target_flipping1[0] with render_target_flipping[0] replaced _tex01 with tex0 replaced _tex01[0] with tex0[0] Getting default parameters for particle_f:A_e Delegating... Getting default parameters for particle_f:A_e Delegating... Compiling shader: particle_v:A_E particle_f:A_E Cg output for particle_v:A_E: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DOPACITY=1 -DEMISSIVE=1 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.scene_ambient_colour //semantic vp_main.sun_diffuse_colour //semantic vp_main.the_fog_params //semantic vp_main.the_fog_colour //semantic vp_main.misc //var float4x4 view : : _view1[0], 4 : 3 : 1 //var float4x4 proj : : _proj1[0], 4 : 4 : 1 //var float4 the_fog_params : : _the_fog_params1 : 7 : 1 //var float3 the_fog_colour : : _the_fog_colour1 : 8 : 1 //var float4 pos_ws : $vin.POSITION : ATTR0 : 0 : 1 //var float4 vcol : $vin.COLOR0 : ATTR3 : 1 : 1 //var float2 uv : $vin.TEXCOORD0 : ATTR8 : 2 : 1 //var float2 uv_ : $vout.TEXCOORD0 : TEX0 : 10 : 1 //var float3 deferred_uv : $vout.TEXCOORD1 : TEX1 : 11 : 1 //var float particle_front_dist : $vout.TEXCOORD2 : TEX2 : 12 : 1 //var float particle_depth : $vout.TEXCOORD3 : TEX3 : 13 : 1 //var float4 colour_ : $vout.COLOR0 : COL0 : 14 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 15 : 1 vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP6; float _TMP4; float _TMP3; float _TMP2; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; uniform vec4 _the_fog_params1; uniform vec3 _the_fog_colour1; vec4 _r0018; vec4 _v0018; float _clarity0036; float _cam_dist0036; float _TMP37; float _x0038; float _TMP41; vec4 _r0050; vec4 _v0050; // main procedure, the original name was vp_main void main() { vec3 _colour; float _cam_dist1; _v0018 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0018.x = dot(_view1[0], _v0018); _r0018.y = dot(_view1[1], _v0018); _r0018.z = dot(_view1[2], _v0018); _colour = gl_Color.xyz*vec3( 8.00000000E+00, 8.00000000E+00, 8.00000000E+00); _TMP2 = pow(_colour.x, 2.20000005E+00); _TMP3 = pow(_colour.y, 2.20000005E+00); _TMP4 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP2, _TMP3, _TMP4); _cam_dist0036 = -_r0018.z; _clarity0036 = _the_fog_params1.x*_cam_dist0036; _x0038 = -_clarity0036*_clarity0036; _TMP37 = pow(2.71828198E+00, _x0038); _TMP6 = min(1.00000000E+00, _TMP37); _TMP41 = max(0.00000000E+00, _TMP6); _colour = _the_fog_colour1 + _TMP41*(_colour - _the_fog_colour1); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0018.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, gl_Color.w); _uv_1 = gl_MultiTexCoord0.xy; _v0050 = vec4(_r0018.x, _r0018.y, _r0018.z, 1.00000000E+00); _r0050.x = dot(_proj1[0], _v0050); _r0050.y = dot(_proj1[1], _v0050); _r0050.z = dot(_proj1[2], _v0050); _r0050.w = dot(_proj1[3], _v0050); _for_rasteriser1 = _r0050; _deferred_uv1 = _r0050.xyw; _for_rasteriser1.z = -_r0050.w + 3.33333337E-05; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0050.xyw; gl_FrontColor = _colour_1; gl_Position = _for_rasteriser1; } // main end  Cleaned Cg output for particle_v:A_E: vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP6; float _TMP4; float _TMP3; float _TMP2; uniform mat4 _view1; uniform mat4 _proj1; uniform vec4 _the_fog_params1; uniform vec3 _the_fog_colour1; vec4 _r0018; vec4 _v0018; float _clarity0036; float _cam_dist0036; float _TMP37; float _x0038; float _TMP41; vec4 _r0050; vec4 _v0050; // main procedure, the original name was vp_main void main() { vec3 _colour; float _cam_dist1; _v0018 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0018.x = dot(_view1[0], _v0018); _r0018.y = dot(_view1[1], _v0018); _r0018.z = dot(_view1[2], _v0018); _colour = gl_Color.xyz*vec3( 8.00000000E+00, 8.00000000E+00, 8.00000000E+00); _TMP2 = pow(_colour.x, 2.20000005E+00); _TMP3 = pow(_colour.y, 2.20000005E+00); _TMP4 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP2, _TMP3, _TMP4); _cam_dist0036 = -_r0018.z; _clarity0036 = _the_fog_params1.x*_cam_dist0036; _x0038 = -_clarity0036*_clarity0036; _TMP37 = pow(2.71828198E+00, _x0038); _TMP6 = min(1.00000000E+00, _TMP37); _TMP41 = max(0.00000000E+00, _TMP6); _colour = _the_fog_colour1 + _TMP41*(_colour - _the_fog_colour1); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0018.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, gl_Color.w); _uv_1 = gl_MultiTexCoord0.xy; _v0050 = vec4(_r0018.x, _r0018.y, _r0018.z, 1.00000000E+00); _r0050.x = dot(_proj1[0], _v0050); _r0050.y = dot(_proj1[1], _v0050); _r0050.z = dot(_proj1[2], _v0050); _r0050.w = dot(_proj1[3], _v0050); _for_rasteriser1 = _r0050; _deferred_uv1 = _r0050.xyw; _for_rasteriser1.z = -_r0050.w + 3.33333337E-05; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0050.xyw; gl_FrontColor = _colour_1; gl_Position = _for_rasteriser1; } // main end  Getting default parameters for particle_v:A_E Delegating... Replacing parameters... Replacing parameter names. replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _the_fog_colour1 with the_fog_colour replaced _the_fog_colour1[0] with the_fog_colour[0] replaced _the_fog_params1 with the_fog_params replaced _the_fog_params1[0] with the_fog_params[0] replaced _view1 with view replaced _view1[0] with view[0] Getting default parameters for particle_v:A_E Delegating... Getting default parameters for particle_v:A_E Delegating... Getting default parameters for particle_v:A_E Delegating... Cg output for particle_f:A_E: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DOPACITY=1 -DEMISSIVE=1 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.tex0 : TEXUNIT0 //semantic fp_main.ptex : TEXUNIT1 //semantic fp_main.alpha_rej //semantic fp_main.far_clip_distance //semantic fp_main.viewport_size //semantic fp_main.render_target_flipping //var sampler2D tex0 : TEXUNIT0 : _tex01 0 : 5 : 1 //var sampler2D ptex : TEXUNIT1 : _ptex1 1 : 6 : 1 //var float alpha_rej : : _alpha_rej1 : 7 : 1 //var float far_clip_distance : : _far_clip_distance1 : 8 : 1 //var float render_target_flipping : : _render_target_flipping1 : 10 : 1 //var float4 colour : $vin.COLOR0 : COL0 : 0 : 1 //var float2 uv_ : $vin.TEXCOORD0 : TEX0 : 1 : 1 //var float3 deferred_uv : $vin.TEXCOORD1 : TEX1 : 2 : 1 //var float particle_front_dist : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float particle_depth : $vin.TEXCOORD3 : TEX3 : 4 : 1 //var float4 pixel : $vout.COLOR0 : COL : 11 : 1 vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _texel.xyz = _texel.xyz/_texel.www; _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Cleaned Cg output for particle_f:A_E: vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _texel.xyz = _texel.xyz/_texel.www; _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Getting default parameters for particle_f:A_E Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _ptex1 with ptex replaced _ptex1[0] with ptex[0] replaced _render_target_flipping1 with render_target_flipping replaced _render_target_flipping1[0] with render_target_flipping[0] replaced _tex01 with tex0 replaced _tex01[0] with tex0[0] Getting default parameters for particle_f:A_E Delegating... Getting default parameters for particle_f:A_E Delegating... Compiling shader: particle_v:L_e particle_f:L_e Cg output for particle_v:L_e: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DOPACITY=2 -DEMISSIVE=0 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.scene_ambient_colour //semantic vp_main.sun_diffuse_colour //semantic vp_main.the_fog_params //semantic vp_main.the_fog_colour //semantic vp_main.misc //var float4x4 view : : _view1[0], 4 : 3 : 1 //var float4x4 proj : : _proj1[0], 4 : 4 : 1 //var float3 scene_ambient_colour : : _scene_ambient_colour1 : 5 : 1 //var float3 sun_diffuse_colour : : _sun_diffuse_colour1 : 6 : 1 //var float4 the_fog_params : : _the_fog_params1 : 7 : 1 //var float3 misc : : _misc1 : 9 : 1 //var float4 pos_ws : $vin.POSITION : ATTR0 : 0 : 1 //var float4 vcol : $vin.COLOR0 : ATTR3 : 1 : 1 //var float2 uv : $vin.TEXCOORD0 : ATTR8 : 2 : 1 //var float2 uv_ : $vout.TEXCOORD0 : TEX0 : 10 : 1 //var float3 deferred_uv : $vout.TEXCOORD1 : TEX1 : 11 : 1 //var float particle_front_dist : $vout.TEXCOORD2 : TEX2 : 12 : 1 //var float particle_depth : $vout.TEXCOORD3 : TEX3 : 13 : 1 //var float4 colour_ : $vout.COLOR0 : COL0 : 14 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 15 : 1 vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP6; float _TMP4; float _TMP3; float _TMP2; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; uniform vec3 _scene_ambient_colour1; uniform vec3 _sun_diffuse_colour1; uniform vec4 _the_fog_params1; uniform vec3 _misc1; vec4 _r0018; vec4 _v0018; float _clarity0036; float _cam_dist0036; float _TMP37; float _x0038; float _TMP41; vec4 _r0048; vec4 _v0048; // main procedure, the original name was vp_main void main() { vec3 _colour; float _cam_dist1; _v0018 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0018.x = dot(_view1[0], _v0018); _r0018.y = dot(_view1[1], _v0018); _r0018.z = dot(_view1[2], _v0018); _colour = gl_Color.xyz*(_misc1.y*_scene_ambient_colour1 + _sun_diffuse_colour1); _TMP2 = pow(_colour.x, 2.20000005E+00); _TMP3 = pow(_colour.y, 2.20000005E+00); _TMP4 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP2, _TMP3, _TMP4); _cam_dist0036 = -_r0018.z; _clarity0036 = _the_fog_params1.x*_cam_dist0036; _x0038 = -_clarity0036*_clarity0036; _TMP37 = pow(2.71828198E+00, _x0038); _TMP6 = min(1.00000000E+00, _TMP37); _TMP41 = max(0.00000000E+00, _TMP6); _colour = _colour*vec3(_TMP41, _TMP41, _TMP41); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0018.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, gl_Color.w); _uv_1 = gl_MultiTexCoord0.xy; _v0048 = vec4(_r0018.x, _r0018.y, _r0018.z, 1.00000000E+00); _r0048.x = dot(_proj1[0], _v0048); _r0048.y = dot(_proj1[1], _v0048); _r0048.z = dot(_proj1[2], _v0048); _r0048.w = dot(_proj1[3], _v0048); _for_rasteriser1 = _r0048; _deferred_uv1 = _r0048.xyw; _for_rasteriser1.z = -_r0048.w + 3.33333337E-05; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0048.xyw; gl_FrontColor = _colour_1; gl_Position = _for_rasteriser1; } // main end  Cleaned Cg output for particle_v:L_e: vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP6; float _TMP4; float _TMP3; float _TMP2; uniform mat4 _view1; uniform mat4 _proj1; uniform vec3 _scene_ambient_colour1; uniform vec3 _sun_diffuse_colour1; uniform vec4 _the_fog_params1; uniform vec3 _misc1; vec4 _r0018; vec4 _v0018; float _clarity0036; float _cam_dist0036; float _TMP37; float _x0038; float _TMP41; vec4 _r0048; vec4 _v0048; // main procedure, the original name was vp_main void main() { vec3 _colour; float _cam_dist1; _v0018 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0018.x = dot(_view1[0], _v0018); _r0018.y = dot(_view1[1], _v0018); _r0018.z = dot(_view1[2], _v0018); _colour = gl_Color.xyz*(_misc1.y*_scene_ambient_colour1 + _sun_diffuse_colour1); _TMP2 = pow(_colour.x, 2.20000005E+00); _TMP3 = pow(_colour.y, 2.20000005E+00); _TMP4 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP2, _TMP3, _TMP4); _cam_dist0036 = -_r0018.z; _clarity0036 = _the_fog_params1.x*_cam_dist0036; _x0038 = -_clarity0036*_clarity0036; _TMP37 = pow(2.71828198E+00, _x0038); _TMP6 = min(1.00000000E+00, _TMP37); _TMP41 = max(0.00000000E+00, _TMP6); _colour = _colour*vec3(_TMP41, _TMP41, _TMP41); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0018.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, gl_Color.w); _uv_1 = gl_MultiTexCoord0.xy; _v0048 = vec4(_r0018.x, _r0018.y, _r0018.z, 1.00000000E+00); _r0048.x = dot(_proj1[0], _v0048); _r0048.y = dot(_proj1[1], _v0048); _r0048.z = dot(_proj1[2], _v0048); _r0048.w = dot(_proj1[3], _v0048); _for_rasteriser1 = _r0048; _deferred_uv1 = _r0048.xyw; _for_rasteriser1.z = -_r0048.w + 3.33333337E-05; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0048.xyw; gl_FrontColor = _colour_1; gl_Position = _for_rasteriser1; } // main end  Getting default parameters for particle_v:L_e Delegating... Replacing parameters... Replacing parameter names. replaced _misc1 with misc replaced _misc1[0] with misc[0] replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _scene_ambient_colour1 with scene_ambient_colour replaced _scene_ambient_colour1[0] with scene_ambient_colour[0] replaced _sun_diffuse_colour1 with sun_diffuse_colour replaced _sun_diffuse_colour1[0] with sun_diffuse_colour[0] replaced _the_fog_params1 with the_fog_params replaced _the_fog_params1[0] with the_fog_params[0] replaced _view1 with view replaced _view1[0] with view[0] Getting default parameters for particle_v:L_e Delegating... Getting default parameters for particle_v:L_e Delegating... Getting default parameters for particle_v:L_e Delegating... Getting default parameters for particle_v:L_e Delegating... Getting default parameters for particle_v:L_e Delegating... Cg output for particle_f:L_e: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DOPACITY=2 -DEMISSIVE=0 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.tex0 : TEXUNIT0 //semantic fp_main.ptex : TEXUNIT1 //semantic fp_main.alpha_rej //semantic fp_main.far_clip_distance //semantic fp_main.viewport_size //semantic fp_main.render_target_flipping //var sampler2D tex0 : TEXUNIT0 : _tex01 0 : 5 : 1 //var sampler2D ptex : TEXUNIT1 : _ptex1 1 : 6 : 1 //var float alpha_rej : : _alpha_rej1 : 7 : 1 //var float far_clip_distance : : _far_clip_distance1 : 8 : 1 //var float render_target_flipping : : _render_target_flipping1 : 10 : 1 //var float4 colour : $vin.COLOR0 : COL0 : 0 : 1 //var float2 uv_ : $vin.TEXCOORD0 : TEX0 : 1 : 1 //var float3 deferred_uv : $vin.TEXCOORD1 : TEX1 : 2 : 1 //var float particle_front_dist : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float particle_depth : $vin.TEXCOORD3 : TEX3 : 4 : 1 //var float4 pixel : $vout.COLOR0 : COL : 11 : 1 vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.xyz = _pixel1.xyz*_TMP46.xxx; _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Cleaned Cg output for particle_f:L_e: vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.xyz = _pixel1.xyz*_TMP46.xxx; _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Getting default parameters for particle_f:L_e Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _ptex1 with ptex replaced _ptex1[0] with ptex[0] replaced _render_target_flipping1 with render_target_flipping replaced _render_target_flipping1[0] with render_target_flipping[0] replaced _tex01 with tex0 replaced _tex01[0] with tex0[0] Getting default parameters for particle_f:L_e Delegating... Getting default parameters for particle_f:L_e Delegating... Compiling shader: particle_v:L_E particle_f:L_E Cg output for particle_v:L_E: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DOPACITY=2 -DEMISSIVE=1 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.scene_ambient_colour //semantic vp_main.sun_diffuse_colour //semantic vp_main.the_fog_params //semantic vp_main.the_fog_colour //semantic vp_main.misc //var float4x4 view : : _view1[0], 4 : 3 : 1 //var float4x4 proj : : _proj1[0], 4 : 4 : 1 //var float4 the_fog_params : : _the_fog_params1 : 7 : 1 //var float4 pos_ws : $vin.POSITION : ATTR0 : 0 : 1 //var float4 vcol : $vin.COLOR0 : ATTR3 : 1 : 1 //var float2 uv : $vin.TEXCOORD0 : ATTR8 : 2 : 1 //var float2 uv_ : $vout.TEXCOORD0 : TEX0 : 10 : 1 //var float3 deferred_uv : $vout.TEXCOORD1 : TEX1 : 11 : 1 //var float particle_front_dist : $vout.TEXCOORD2 : TEX2 : 12 : 1 //var float particle_depth : $vout.TEXCOORD3 : TEX3 : 13 : 1 //var float4 colour_ : $vout.COLOR0 : COL0 : 14 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 15 : 1 vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP6; float _TMP4; float _TMP3; float _TMP2; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; uniform vec4 _the_fog_params1; vec4 _r0018; vec4 _v0018; float _clarity0036; float _cam_dist0036; float _TMP37; float _x0038; float _TMP41; vec4 _r0048; vec4 _v0048; // main procedure, the original name was vp_main void main() { vec3 _colour; float _cam_dist1; _v0018 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0018.x = dot(_view1[0], _v0018); _r0018.y = dot(_view1[1], _v0018); _r0018.z = dot(_view1[2], _v0018); _colour = gl_Color.xyz*vec3( 8.00000000E+00, 8.00000000E+00, 8.00000000E+00); _TMP2 = pow(_colour.x, 2.20000005E+00); _TMP3 = pow(_colour.y, 2.20000005E+00); _TMP4 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP2, _TMP3, _TMP4); _cam_dist0036 = -_r0018.z; _clarity0036 = _the_fog_params1.x*_cam_dist0036; _x0038 = -_clarity0036*_clarity0036; _TMP37 = pow(2.71828198E+00, _x0038); _TMP6 = min(1.00000000E+00, _TMP37); _TMP41 = max(0.00000000E+00, _TMP6); _colour = _colour*vec3(_TMP41, _TMP41, _TMP41); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0018.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, gl_Color.w); _uv_1 = gl_MultiTexCoord0.xy; _v0048 = vec4(_r0018.x, _r0018.y, _r0018.z, 1.00000000E+00); _r0048.x = dot(_proj1[0], _v0048); _r0048.y = dot(_proj1[1], _v0048); _r0048.z = dot(_proj1[2], _v0048); _r0048.w = dot(_proj1[3], _v0048); _for_rasteriser1 = _r0048; _deferred_uv1 = _r0048.xyw; _for_rasteriser1.z = -_r0048.w + 3.33333337E-05; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0048.xyw; gl_FrontColor = _colour_1; gl_Position = _for_rasteriser1; } // main end  Cleaned Cg output for particle_v:L_E: vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP6; float _TMP4; float _TMP3; float _TMP2; uniform mat4 _view1; uniform mat4 _proj1; uniform vec4 _the_fog_params1; vec4 _r0018; vec4 _v0018; float _clarity0036; float _cam_dist0036; float _TMP37; float _x0038; float _TMP41; vec4 _r0048; vec4 _v0048; // main procedure, the original name was vp_main void main() { vec3 _colour; float _cam_dist1; _v0018 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0018.x = dot(_view1[0], _v0018); _r0018.y = dot(_view1[1], _v0018); _r0018.z = dot(_view1[2], _v0018); _colour = gl_Color.xyz*vec3( 8.00000000E+00, 8.00000000E+00, 8.00000000E+00); _TMP2 = pow(_colour.x, 2.20000005E+00); _TMP3 = pow(_colour.y, 2.20000005E+00); _TMP4 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP2, _TMP3, _TMP4); _cam_dist0036 = -_r0018.z; _clarity0036 = _the_fog_params1.x*_cam_dist0036; _x0038 = -_clarity0036*_clarity0036; _TMP37 = pow(2.71828198E+00, _x0038); _TMP6 = min(1.00000000E+00, _TMP37); _TMP41 = max(0.00000000E+00, _TMP6); _colour = _colour*vec3(_TMP41, _TMP41, _TMP41); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0018.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, gl_Color.w); _uv_1 = gl_MultiTexCoord0.xy; _v0048 = vec4(_r0018.x, _r0018.y, _r0018.z, 1.00000000E+00); _r0048.x = dot(_proj1[0], _v0048); _r0048.y = dot(_proj1[1], _v0048); _r0048.z = dot(_proj1[2], _v0048); _r0048.w = dot(_proj1[3], _v0048); _for_rasteriser1 = _r0048; _deferred_uv1 = _r0048.xyw; _for_rasteriser1.z = -_r0048.w + 3.33333337E-05; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0048.xyw; gl_FrontColor = _colour_1; gl_Position = _for_rasteriser1; } // main end  Getting default parameters for particle_v:L_E Delegating... Replacing parameters... Replacing parameter names. replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _the_fog_params1 with the_fog_params replaced _the_fog_params1[0] with the_fog_params[0] replaced _view1 with view replaced _view1[0] with view[0] Getting default parameters for particle_v:L_E Delegating... Getting default parameters for particle_v:L_E Delegating... Cg output for particle_f:L_E: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DOPACITY=2 -DEMISSIVE=1 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.tex0 : TEXUNIT0 //semantic fp_main.ptex : TEXUNIT1 //semantic fp_main.alpha_rej //semantic fp_main.far_clip_distance //semantic fp_main.viewport_size //semantic fp_main.render_target_flipping //var sampler2D tex0 : TEXUNIT0 : _tex01 0 : 5 : 1 //var sampler2D ptex : TEXUNIT1 : _ptex1 1 : 6 : 1 //var float alpha_rej : : _alpha_rej1 : 7 : 1 //var float far_clip_distance : : _far_clip_distance1 : 8 : 1 //var float render_target_flipping : : _render_target_flipping1 : 10 : 1 //var float4 colour : $vin.COLOR0 : COL0 : 0 : 1 //var float2 uv_ : $vin.TEXCOORD0 : TEX0 : 1 : 1 //var float3 deferred_uv : $vin.TEXCOORD1 : TEX1 : 2 : 1 //var float particle_front_dist : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float particle_depth : $vin.TEXCOORD3 : TEX3 : 4 : 1 //var float4 pixel : $vout.COLOR0 : COL : 11 : 1 vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.xyz = _pixel1.xyz*_TMP46.xxx; _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Cleaned Cg output for particle_f:L_E: vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.xyz = _pixel1.xyz*_TMP46.xxx; _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Getting default parameters for particle_f:L_E Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _ptex1 with ptex replaced _ptex1[0] with ptex[0] replaced _render_target_flipping1 with render_target_flipping replaced _render_target_flipping1[0] with render_target_flipping[0] replaced _tex01 with tex0 replaced _tex01[0] with tex0[0] Getting default parameters for particle_f:L_E Delegating... Getting default parameters for particle_f:L_E Delegating... Compiling shader: particle_v:P_e particle_f:P_e Cg output for particle_v:P_e: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DOPACITY=3 -DEMISSIVE=0 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.scene_ambient_colour //semantic vp_main.sun_diffuse_colour //semantic vp_main.the_fog_params //semantic vp_main.the_fog_colour //semantic vp_main.misc //var float4x4 view : : _view1[0], 4 : 3 : 1 //var float4x4 proj : : _proj1[0], 4 : 4 : 1 //var float3 scene_ambient_colour : : _scene_ambient_colour1 : 5 : 1 //var float3 sun_diffuse_colour : : _sun_diffuse_colour1 : 6 : 1 //var float4 the_fog_params : : _the_fog_params1 : 7 : 1 //var float3 misc : : _misc1 : 9 : 1 //var float4 pos_ws : $vin.POSITION : ATTR0 : 0 : 1 //var float4 vcol : $vin.COLOR0 : ATTR3 : 1 : 1 //var float2 uv : $vin.TEXCOORD0 : ATTR8 : 2 : 1 //var float2 uv_ : $vout.TEXCOORD0 : TEX0 : 10 : 1 //var float3 deferred_uv : $vout.TEXCOORD1 : TEX1 : 11 : 1 //var float particle_front_dist : $vout.TEXCOORD2 : TEX2 : 12 : 1 //var float particle_depth : $vout.TEXCOORD3 : TEX3 : 13 : 1 //var float4 colour_ : $vout.COLOR0 : COL0 : 14 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 15 : 1 vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP6; float _TMP4; float _TMP3; float _TMP2; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; uniform vec3 _scene_ambient_colour1; uniform vec3 _sun_diffuse_colour1; uniform vec4 _the_fog_params1; uniform vec3 _misc1; vec4 _r0018; vec4 _v0018; float _clarity0036; float _cam_dist0036; float _TMP37; float _x0038; float _TMP41; vec4 _r0048; vec4 _v0048; // main procedure, the original name was vp_main void main() { vec3 _colour; float _alpha; float _cam_dist1; _v0018 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0018.x = dot(_view1[0], _v0018); _r0018.y = dot(_view1[1], _v0018); _r0018.z = dot(_view1[2], _v0018); _colour = gl_Color.xyz*(_misc1.y*_scene_ambient_colour1 + _sun_diffuse_colour1); _TMP2 = pow(_colour.x, 2.20000005E+00); _TMP3 = pow(_colour.y, 2.20000005E+00); _TMP4 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP2, _TMP3, _TMP4); _cam_dist0036 = -_r0018.z; _clarity0036 = _the_fog_params1.x*_cam_dist0036; _x0038 = -_clarity0036*_clarity0036; _TMP37 = pow(2.71828198E+00, _x0038); _TMP6 = min(1.00000000E+00, _TMP37); _TMP41 = max(0.00000000E+00, _TMP6); _alpha = gl_Color.w*_TMP41; _colour = _colour*vec3(_TMP41, _TMP41, _TMP41); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0018.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, _alpha); _uv_1 = gl_MultiTexCoord0.xy; _v0048 = vec4(_r0018.x, _r0018.y, _r0018.z, 1.00000000E+00); _r0048.x = dot(_proj1[0], _v0048); _r0048.y = dot(_proj1[1], _v0048); _r0048.z = dot(_proj1[2], _v0048); _r0048.w = dot(_proj1[3], _v0048); _for_rasteriser1 = _r0048; _deferred_uv1 = _r0048.xyw; _for_rasteriser1.z = -_r0048.w + 3.33333337E-05; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0048.xyw; gl_FrontColor = _colour_1; gl_Position = _for_rasteriser1; } // main end  Cleaned Cg output for particle_v:P_e: vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP6; float _TMP4; float _TMP3; float _TMP2; uniform mat4 _view1; uniform mat4 _proj1; uniform vec3 _scene_ambient_colour1; uniform vec3 _sun_diffuse_colour1; uniform vec4 _the_fog_params1; uniform vec3 _misc1; vec4 _r0018; vec4 _v0018; float _clarity0036; float _cam_dist0036; float _TMP37; float _x0038; float _TMP41; vec4 _r0048; vec4 _v0048; // main procedure, the original name was vp_main void main() { vec3 _colour; float _alpha; float _cam_dist1; _v0018 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0018.x = dot(_view1[0], _v0018); _r0018.y = dot(_view1[1], _v0018); _r0018.z = dot(_view1[2], _v0018); _colour = gl_Color.xyz*(_misc1.y*_scene_ambient_colour1 + _sun_diffuse_colour1); _TMP2 = pow(_colour.x, 2.20000005E+00); _TMP3 = pow(_colour.y, 2.20000005E+00); _TMP4 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP2, _TMP3, _TMP4); _cam_dist0036 = -_r0018.z; _clarity0036 = _the_fog_params1.x*_cam_dist0036; _x0038 = -_clarity0036*_clarity0036; _TMP37 = pow(2.71828198E+00, _x0038); _TMP6 = min(1.00000000E+00, _TMP37); _TMP41 = max(0.00000000E+00, _TMP6); _alpha = gl_Color.w*_TMP41; _colour = _colour*vec3(_TMP41, _TMP41, _TMP41); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0018.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, _alpha); _uv_1 = gl_MultiTexCoord0.xy; _v0048 = vec4(_r0018.x, _r0018.y, _r0018.z, 1.00000000E+00); _r0048.x = dot(_proj1[0], _v0048); _r0048.y = dot(_proj1[1], _v0048); _r0048.z = dot(_proj1[2], _v0048); _r0048.w = dot(_proj1[3], _v0048); _for_rasteriser1 = _r0048; _deferred_uv1 = _r0048.xyw; _for_rasteriser1.z = -_r0048.w + 3.33333337E-05; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0048.xyw; gl_FrontColor = _colour_1; gl_Position = _for_rasteriser1; } // main end  Getting default parameters for particle_v:P_e Delegating... Replacing parameters... Replacing parameter names. replaced _misc1 with misc replaced _misc1[0] with misc[0] replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _scene_ambient_colour1 with scene_ambient_colour replaced _scene_ambient_colour1[0] with scene_ambient_colour[0] replaced _sun_diffuse_colour1 with sun_diffuse_colour replaced _sun_diffuse_colour1[0] with sun_diffuse_colour[0] replaced _the_fog_params1 with the_fog_params replaced _the_fog_params1[0] with the_fog_params[0] replaced _view1 with view replaced _view1[0] with view[0] Getting default parameters for particle_v:P_e Delegating... Getting default parameters for particle_v:P_e Delegating... Getting default parameters for particle_v:P_e Delegating... Getting default parameters for particle_v:P_e Delegating... Getting default parameters for particle_v:P_e Delegating... Cg output for particle_f:P_e: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DOPACITY=3 -DEMISSIVE=0 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.tex0 : TEXUNIT0 //semantic fp_main.ptex : TEXUNIT1 //semantic fp_main.alpha_rej //semantic fp_main.far_clip_distance //semantic fp_main.viewport_size //semantic fp_main.render_target_flipping //var sampler2D tex0 : TEXUNIT0 : _tex01 0 : 5 : 1 //var sampler2D ptex : TEXUNIT1 : _ptex1 1 : 6 : 1 //var float alpha_rej : : _alpha_rej1 : 7 : 1 //var float far_clip_distance : : _far_clip_distance1 : 8 : 1 //var float render_target_flipping : : _render_target_flipping1 : 10 : 1 //var float4 colour : $vin.COLOR0 : COL0 : 0 : 1 //var float2 uv_ : $vin.TEXCOORD0 : TEX0 : 1 : 1 //var float3 deferred_uv : $vin.TEXCOORD1 : TEX1 : 2 : 1 //var float particle_front_dist : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float particle_depth : $vin.TEXCOORD3 : TEX3 : 4 : 1 //var float4 pixel : $vout.COLOR0 : COL : 11 : 1 vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.xyz = _pixel1.xyz*_TMP46.xxx; _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Cleaned Cg output for particle_f:P_e: vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.xyz = _pixel1.xyz*_TMP46.xxx; _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Getting default parameters for particle_f:P_e Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _ptex1 with ptex replaced _ptex1[0] with ptex[0] replaced _render_target_flipping1 with render_target_flipping replaced _render_target_flipping1[0] with render_target_flipping[0] replaced _tex01 with tex0 replaced _tex01[0] with tex0[0] Getting default parameters for particle_f:P_e Delegating... Getting default parameters for particle_f:P_e Delegating... Compiling shader: particle_v:P_E particle_f:P_E Cg output for particle_v:P_E: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DOPACITY=3 -DEMISSIVE=1 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.scene_ambient_colour //semantic vp_main.sun_diffuse_colour //semantic vp_main.the_fog_params //semantic vp_main.the_fog_colour //semantic vp_main.misc //var float4x4 view : : _view1[0], 4 : 3 : 1 //var float4x4 proj : : _proj1[0], 4 : 4 : 1 //var float4 the_fog_params : : _the_fog_params1 : 7 : 1 //var float4 pos_ws : $vin.POSITION : ATTR0 : 0 : 1 //var float4 vcol : $vin.COLOR0 : ATTR3 : 1 : 1 //var float2 uv : $vin.TEXCOORD0 : ATTR8 : 2 : 1 //var float2 uv_ : $vout.TEXCOORD0 : TEX0 : 10 : 1 //var float3 deferred_uv : $vout.TEXCOORD1 : TEX1 : 11 : 1 //var float particle_front_dist : $vout.TEXCOORD2 : TEX2 : 12 : 1 //var float particle_depth : $vout.TEXCOORD3 : TEX3 : 13 : 1 //var float4 colour_ : $vout.COLOR0 : COL0 : 14 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 15 : 1 vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP6; float _TMP4; float _TMP3; float _TMP2; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; uniform vec4 _the_fog_params1; vec4 _r0018; vec4 _v0018; float _clarity0036; float _cam_dist0036; float _TMP37; float _x0038; float _TMP41; vec4 _r0048; vec4 _v0048; // main procedure, the original name was vp_main void main() { vec3 _colour; float _alpha; float _cam_dist1; _v0018 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0018.x = dot(_view1[0], _v0018); _r0018.y = dot(_view1[1], _v0018); _r0018.z = dot(_view1[2], _v0018); _colour = gl_Color.xyz*vec3( 8.00000000E+00, 8.00000000E+00, 8.00000000E+00); _TMP2 = pow(_colour.x, 2.20000005E+00); _TMP3 = pow(_colour.y, 2.20000005E+00); _TMP4 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP2, _TMP3, _TMP4); _cam_dist0036 = -_r0018.z; _clarity0036 = _the_fog_params1.x*_cam_dist0036; _x0038 = -_clarity0036*_clarity0036; _TMP37 = pow(2.71828198E+00, _x0038); _TMP6 = min(1.00000000E+00, _TMP37); _TMP41 = max(0.00000000E+00, _TMP6); _alpha = gl_Color.w*_TMP41; _colour = _colour*vec3(_TMP41, _TMP41, _TMP41); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0018.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, _alpha); _uv_1 = gl_MultiTexCoord0.xy; _v0048 = vec4(_r0018.x, _r0018.y, _r0018.z, 1.00000000E+00); _r0048.x = dot(_proj1[0], _v0048); _r0048.y = dot(_proj1[1], _v0048); _r0048.z = dot(_proj1[2], _v0048); _r0048.w = dot(_proj1[3], _v0048); _for_rasteriser1 = _r0048; _deferred_uv1 = _r0048.xyw; _for_rasteriser1.z = -_r0048.w + 3.33333337E-05; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0048.xyw; gl_FrontColor = _colour_1; gl_Position = _for_rasteriser1; } // main end  Cleaned Cg output for particle_v:P_E: vec4 _for_rasteriser1; vec4 _colour_1; vec3 _deferred_uv1; float _particle_depth1; vec2 _uv_1; float _particle_front_dist1; float _TMP6; float _TMP4; float _TMP3; float _TMP2; uniform mat4 _view1; uniform mat4 _proj1; uniform vec4 _the_fog_params1; vec4 _r0018; vec4 _v0018; float _clarity0036; float _cam_dist0036; float _TMP37; float _x0038; float _TMP41; vec4 _r0048; vec4 _v0048; // main procedure, the original name was vp_main void main() { vec3 _colour; float _alpha; float _cam_dist1; _v0018 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0018.x = dot(_view1[0], _v0018); _r0018.y = dot(_view1[1], _v0018); _r0018.z = dot(_view1[2], _v0018); _colour = gl_Color.xyz*vec3( 8.00000000E+00, 8.00000000E+00, 8.00000000E+00); _TMP2 = pow(_colour.x, 2.20000005E+00); _TMP3 = pow(_colour.y, 2.20000005E+00); _TMP4 = pow(_colour.z, 2.20000005E+00); _colour = vec3(_TMP2, _TMP3, _TMP4); _cam_dist0036 = -_r0018.z; _clarity0036 = _the_fog_params1.x*_cam_dist0036; _x0038 = -_clarity0036*_clarity0036; _TMP37 = pow(2.71828198E+00, _x0038); _TMP6 = min(1.00000000E+00, _TMP37); _TMP41 = max(0.00000000E+00, _TMP6); _alpha = gl_Color.w*_TMP41; _colour = _colour*vec3(_TMP41, _TMP41, _TMP41); _particle_depth1 = -gl_Vertex.w*2.00000000E+00; _cam_dist1 = -_r0018.z; _colour_1 = vec4(_colour.x, _colour.y, _colour.z, _alpha); _uv_1 = gl_MultiTexCoord0.xy; _v0048 = vec4(_r0018.x, _r0018.y, _r0018.z, 1.00000000E+00); _r0048.x = dot(_proj1[0], _v0048); _r0048.y = dot(_proj1[1], _v0048); _r0048.z = dot(_proj1[2], _v0048); _r0048.w = dot(_proj1[3], _v0048); _for_rasteriser1 = _r0048; _deferred_uv1 = _r0048.xyw; _for_rasteriser1.z = -_r0048.w + 3.33333337E-05; _particle_front_dist1 = _cam_dist1 + gl_Vertex.w; gl_TexCoord[2].x = _particle_front_dist1; gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; gl_TexCoord[3].x = _particle_depth1; gl_TexCoord[1].xyz = _r0048.xyw; gl_FrontColor = _colour_1; gl_Position = _for_rasteriser1; } // main end  Getting default parameters for particle_v:P_E Delegating... Replacing parameters... Replacing parameter names. replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _the_fog_params1 with the_fog_params replaced _the_fog_params1[0] with the_fog_params[0] replaced _view1 with view replaced _view1[0] with view[0] Getting default parameters for particle_v:P_E Delegating... Getting default parameters for particle_v:P_E Delegating... Cg output for particle_f:P_E: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DOPACITY=3 -DEMISSIVE=1 -DPARTICLE_USE_DEFERRED=1 -DPREMULTIPLIED_ALPHA=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.tex0 : TEXUNIT0 //semantic fp_main.ptex : TEXUNIT1 //semantic fp_main.alpha_rej //semantic fp_main.far_clip_distance //semantic fp_main.viewport_size //semantic fp_main.render_target_flipping //var sampler2D tex0 : TEXUNIT0 : _tex01 0 : 5 : 1 //var sampler2D ptex : TEXUNIT1 : _ptex1 1 : 6 : 1 //var float alpha_rej : : _alpha_rej1 : 7 : 1 //var float far_clip_distance : : _far_clip_distance1 : 8 : 1 //var float render_target_flipping : : _render_target_flipping1 : 10 : 1 //var float4 colour : $vin.COLOR0 : COL0 : 0 : 1 //var float2 uv_ : $vin.TEXCOORD0 : TEX0 : 1 : 1 //var float3 deferred_uv : $vin.TEXCOORD1 : TEX1 : 2 : 1 //var float particle_front_dist : $vin.TEXCOORD2 : TEX2 : 3 : 1 //var float particle_depth : $vin.TEXCOORD3 : TEX3 : 4 : 1 //var float4 pixel : $vout.COLOR0 : COL : 11 : 1 vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.xyz = _pixel1.xyz*_TMP46.xxx; _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Cleaned Cg output for particle_f:P_E: vec4 _pixel1; float _TMP5; float _TMP4; float _TMP3; vec3 _TMP6; vec4 _TMP1; uniform sampler2D _tex01; uniform sampler2D _ptex1; uniform float _alpha_rej1; uniform float _far_clip_distance1; uniform float _render_target_flipping1; float _cam_dist0029; vec3 _TMP46; vec3 _x0047; // main procedure, the original name was fp_main void main() { vec4 _texel; vec2 _uv; vec3 _fragment_cam_dist; _texel = texture2D(_ptex1, gl_TexCoord[0].xy); if (_texel.w <= _alpha_rej1) { // if begin discard; } // end if _TMP3 = pow(_texel.x, 2.20000005E+00); _TMP4 = pow(_texel.y, 2.20000005E+00); _TMP5 = pow(_texel.z, 2.20000005E+00); _texel.xyz = vec3(_TMP3, _TMP4, _TMP5); _pixel1 = _texel*gl_Color; _pixel1 = _pixel1*_texel.wwww; _uv = gl_TexCoord[1].xy/gl_TexCoord[1].z; _uv = _uv*vec2(5.00000000E-01, _render_target_flipping1*-5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP1 = texture2D(_tex01, _uv); _cam_dist0029 = (2.55000000E+02*(6.55360000E+04*_TMP1.x + 2.56000000E+02*_TMP1.y + _TMP1.z))/1.67772150E+07; _fragment_cam_dist = vec3(_cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1, _cam_dist0029*_far_clip_distance1); _x0047 = (_fragment_cam_dist - gl_TexCoord[2].x)/gl_TexCoord[3].x; _TMP6 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0047); _TMP46 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP6); _pixel1.xyz = _pixel1.xyz*_TMP46.xxx; _pixel1.w = _pixel1.w*_TMP46.x; _TMP3 = pow(_pixel1.x, 4.54545438E-01); _TMP4 = pow(_pixel1.y, 4.54545438E-01); _TMP5 = pow(_pixel1.z, 4.54545438E-01); _pixel1.xyz = vec3(_TMP3, _TMP4, _TMP5); gl_FragColor = _pixel1; } // main end  Getting default parameters for particle_f:P_E Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej1 with alpha_rej replaced _alpha_rej1[0] with alpha_rej[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _ptex1 with ptex replaced _ptex1[0] with ptex[0] replaced _render_target_flipping1 with render_target_flipping replaced _render_target_flipping1[0] with render_target_flipping[0] replaced _tex01 with tex0 replaced _tex01[0] with tex0[0] Getting default parameters for particle_f:P_E Delegating... Getting default parameters for particle_f:P_E Delegating... Rebuilt 0 shaders in 0.000802 seconds. Requested GpuProgramParameters for deferred_ambient_sun_v Requested GpuProgramParameters for deferred_ambient_sun_f Requested GpuProgramParameters for deferred_lights_v Cg output for deferred_lights_f: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=0 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=0 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=1 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=1 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=0 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=0 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=0 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DFORWARD_PART=0 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=1 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.top_left_ray //semantic fp_main.top_right_ray //semantic fp_main.bottom_left_ray //semantic fp_main.bottom_right_ray //semantic fp_main.the_fog_params //semantic fp_main.camera_pos_ws //semantic fp_main.far_clip_distance //semantic fp_main.viewport_size //semantic fp_main.tex0 : TEXUNIT0 //semantic fp_main.tex1 : TEXUNIT1 //semantic fp_main.tex2 : TEXUNIT2 //semantic fp_main.tex3 : TEXUNIT3 //var float3 top_left_ray : : _top_left_ray1 : 6 : 1 //var float3 top_right_ray : : _top_right_ray1 : 7 : 1 //var float3 bottom_left_ray : : _bottom_left_ray1 : 8 : 1 //var float3 bottom_right_ray : : _bottom_right_ray1 : 9 : 1 //var float4 the_fog_params : : _the_fog_params1 : 10 : 1 //var float3 camera_pos_ws : : _camera_pos_ws1 : 11 : 1 //var float far_clip_distance : : _far_clip_distance1 : 12 : 1 //var sampler2D tex0 : TEXUNIT0 : _tex01 0 : 14 : 1 //var sampler2D tex1 : TEXUNIT1 : _tex11 1 : 15 : 1 //var sampler2D tex2 : TEXUNIT2 : _tex21 2 : 16 : 1 //var sampler2D tex3 : TEXUNIT3 : _tex31 3 : 17 : 1 //var float3 uv_ : $vin.TEXCOORD0 : TEX0 : 0 : 1 //var float3 light_aim_ws_ : $vin.TEXCOORD2 : TEX2 : 1 : 1 //var float3 diff_colour_ : $vin.TEXCOORD3 : TEX3 : 2 : 1 //var float3 spec_colour_ : $vin.TEXCOORD4 : TEX4 : 3 : 1 //var float3 light_pos_ws_ : $vin.TEXCOORD5 : TEX5 : 4 : 1 //var float3 light_param_ : $vin.TEXCOORD6 : TEX6 : 5 : 1 //var float3 pixel : $vout.COLOR0 : COL : 18 : 1 vec3 _pixel1; float _TMP15; float _TMP10; float _TMP9; vec3 _TMP8; float _TMP16; float _TMP7; float _TMP14; float _TMP21; float _TMP13; float _TMP12; vec4 _TMP6; vec4 _TMP5; vec4 _TMP4; vec4 _TMP3; float _TMP20; float _TMP19; float _TMP18; vec3 _TMP1; vec3 _TMP0; uniform vec3 _top_left_ray1; uniform vec3 _top_right_ray1; uniform vec3 _bottom_left_ray1; uniform vec3 _bottom_right_ray1; uniform vec4 _the_fog_params1; uniform vec3 _camera_pos_ws1; uniform float _far_clip_distance1; uniform sampler2D _tex01; uniform sampler2D _tex11; uniform sampler2D _tex21; uniform sampler2D _tex31; float _cam_dist0050; vec3 _normal_ws0050; vec3 _diff_colour0050; vec3 _spec_colour0050; float _gloss0050; vec3 _v0054; float _TMP73; float _dist0082; float _TMP87; float _x0088; float _clarity0108; float _TMP109; float _x0110; float _TMP113; // main procedure, the original name was fp_main void main() { vec2 _uv; vec3 _ray; vec3 _pos_ws; vec3 _cam_dist2; vec3 _camera_dir_ws; vec3 _light_ray_ws; vec3 _light_dir_ws; float _light_intensity; float _angle; float _diff_exposure; float _diff_illumination; vec3 _diff_component; float _spec_exposure; float _spec_illumination; vec3 _spec_component; _uv = gl_TexCoord[0].xy/gl_TexCoord[0].z; _uv = _uv*vec2( 5.00000000E-01, -5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP0 = _top_left_ray1 + _uv.x*(_top_right_ray1 - _top_left_ray1); _TMP1 = _bottom_left_ray1 + _uv.x*(_bottom_right_ray1 - _bottom_left_ray1); _ray = _TMP0 + _uv.y*(_TMP1 - _TMP0); _TMP3 = texture2D(_tex01, _uv); _TMP4 = texture2D(_tex11, _uv); _TMP5 = texture2D(_tex21, _uv); _TMP6 = texture2D(_tex31, _uv); _cam_dist0050 = (2.55000000E+02*(6.55360000E+04*_TMP3.x + 2.56000000E+02*_TMP3.y + _TMP3.z))/1.67772150E+07; _v0054 = _TMP4.xyz*vec3( 2.00000000E+00, 2.00000000E+00, 2.00000000E+00) - vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _TMP12 = dot(_v0054, _v0054); _TMP13 = inversesqrt(_TMP12); _normal_ws0050 = _TMP13*_v0054; _TMP18 = pow(_TMP5.x, 2.20000005E+00); _TMP19 = pow(_TMP5.y, 2.20000005E+00); _TMP20 = pow(_TMP5.z, 2.20000005E+00); _diff_colour0050 = vec3(_TMP18, _TMP19, _TMP20); _spec_colour0050 = _TMP6.xyz*2.00000000E+00; _gloss0050 = _TMP6.w*5.00000000E+01; if (_cam_dist0050 >= 1.00000000E+00) { // if begin discard; } // end if _pos_ws = _camera_pos_ws1 + _cam_dist0050*_ray; _cam_dist2 = vec3(_cam_dist0050*_far_clip_distance1, _cam_dist0050*_far_clip_distance1, _cam_dist0050*_far_clip_distance1); _TMP12 = dot(_ray, _ray); _TMP13 = inversesqrt(_TMP12); _ray = _TMP13*_ray; _camera_dir_ws = -_ray; _light_ray_ws = gl_TexCoord[5].xyz - _pos_ws; _TMP14 = dot(_light_ray_ws, _light_ray_ws); _TMP21 = inversesqrt(_TMP14); _TMP73 = 1.00000000E+00/_TMP21; _light_dir_ws = _light_ray_ws/_TMP73; _dist0082 = _TMP73/gl_TexCoord[6].z; _dist0082 = min(1.00000000E+00, _dist0082); _light_intensity = (2.00000000E+00*_dist0082*_dist0082*_dist0082 - 3.00000000E+00*_dist0082*_dist0082) + 1.00000000E+00; _TMP7 = dot(gl_TexCoord[2].xyz, _light_dir_ws); _angle = -_TMP7; if (gl_TexCoord[6].y != gl_TexCoord[6].x) { // if begin _x0088 = (_angle - gl_TexCoord[6].x)/(gl_TexCoord[6].y - gl_TexCoord[6].x); _TMP15 = min(1.00000000E+00, _x0088); _TMP87 = max(0.00000000E+00, _TMP15); _light_intensity = _light_intensity*(1.00000000E+00 - _TMP87); } // end if _diff_exposure = dot(_normal_ws0050, _light_dir_ws); _diff_illumination = max(_diff_exposure, 0.00000000E+00); _diff_component = (_diff_colour0050*gl_TexCoord[3].xyz)*_diff_illumination; _TMP16 = dot(_normal_ws0050, _light_dir_ws); _TMP8 = _light_dir_ws - (2.00000000E+00*_normal_ws0050)*_TMP16; _TMP9 = dot(_TMP8, _camera_dir_ws); _spec_exposure = -_TMP9; _TMP10 = max(1.00000001E-07, _spec_exposure); _spec_illumination = pow(_TMP10, _gloss0050); _spec_component = (_spec_illumination*_spec_colour0050)*gl_TexCoord[4].xyz; _clarity0108 = _the_fog_params1.x*_cam_dist2.x; _x0110 = -_clarity0108*_clarity0108; _TMP109 = pow(2.71828198E+00, _x0110); _TMP15 = min(1.00000000E+00, _TMP109); _TMP113 = max(0.00000000E+00, _TMP15); _pixel1 = (_light_intensity*(_diff_component + _spec_component))*_TMP113; gl_FragColor.xyz = _pixel1; } // main end  Cleaned Cg output for deferred_lights_f: vec3 _pixel1; float _TMP15; float _TMP10; float _TMP9; vec3 _TMP8; float _TMP16; float _TMP7; float _TMP14; float _TMP21; float _TMP13; float _TMP12; vec4 _TMP6; vec4 _TMP5; vec4 _TMP4; vec4 _TMP3; float _TMP20; float _TMP19; float _TMP18; vec3 _TMP1; vec3 _TMP0; uniform vec3 _top_left_ray1; uniform vec3 _top_right_ray1; uniform vec3 _bottom_left_ray1; uniform vec3 _bottom_right_ray1; uniform vec4 _the_fog_params1; uniform vec3 _camera_pos_ws1; uniform float _far_clip_distance1; uniform sampler2D _tex01; uniform sampler2D _tex11; uniform sampler2D _tex21; uniform sampler2D _tex31; float _cam_dist0050; vec3 _normal_ws0050; vec3 _diff_colour0050; vec3 _spec_colour0050; float _gloss0050; vec3 _v0054; float _TMP73; float _dist0082; float _TMP87; float _x0088; float _clarity0108; float _TMP109; float _x0110; float _TMP113; // main procedure, the original name was fp_main void main() { vec2 _uv; vec3 _ray; vec3 _pos_ws; vec3 _cam_dist2; vec3 _camera_dir_ws; vec3 _light_ray_ws; vec3 _light_dir_ws; float _light_intensity; float _angle; float _diff_exposure; float _diff_illumination; vec3 _diff_component; float _spec_exposure; float _spec_illumination; vec3 _spec_component; _uv = gl_TexCoord[0].xy/gl_TexCoord[0].z; _uv = _uv*vec2( 5.00000000E-01, -5.00000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01); _TMP0 = _top_left_ray1 + _uv.x*(_top_right_ray1 - _top_left_ray1); _TMP1 = _bottom_left_ray1 + _uv.x*(_bottom_right_ray1 - _bottom_left_ray1); _ray = _TMP0 + _uv.y*(_TMP1 - _TMP0); _TMP3 = texture2D(_tex01, _uv); _TMP4 = texture2D(_tex11, _uv); _TMP5 = texture2D(_tex21, _uv); _TMP6 = texture2D(_tex31, _uv); _cam_dist0050 = (2.55000000E+02*(6.55360000E+04*_TMP3.x + 2.56000000E+02*_TMP3.y + _TMP3.z))/1.67772150E+07; _v0054 = _TMP4.xyz*vec3( 2.00000000E+00, 2.00000000E+00, 2.00000000E+00) - vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _TMP12 = dot(_v0054, _v0054); _TMP13 = inversesqrt(_TMP12); _normal_ws0050 = _TMP13*_v0054; _TMP18 = pow(_TMP5.x, 2.20000005E+00); _TMP19 = pow(_TMP5.y, 2.20000005E+00); _TMP20 = pow(_TMP5.z, 2.20000005E+00); _diff_colour0050 = vec3(_TMP18, _TMP19, _TMP20); _spec_colour0050 = _TMP6.xyz*2.00000000E+00; _gloss0050 = _TMP6.w*5.00000000E+01; if (_cam_dist0050 >= 1.00000000E+00) { // if begin discard; } // end if _pos_ws = _camera_pos_ws1 + _cam_dist0050*_ray; _cam_dist2 = vec3(_cam_dist0050*_far_clip_distance1, _cam_dist0050*_far_clip_distance1, _cam_dist0050*_far_clip_distance1); _TMP12 = dot(_ray, _ray); _TMP13 = inversesqrt(_TMP12); _ray = _TMP13*_ray; _camera_dir_ws = -_ray; _light_ray_ws = gl_TexCoord[5].xyz - _pos_ws; _TMP14 = dot(_light_ray_ws, _light_ray_ws); _TMP21 = inversesqrt(_TMP14); _TMP73 = 1.00000000E+00/_TMP21; _light_dir_ws = _light_ray_ws/_TMP73; _dist0082 = _TMP73/gl_TexCoord[6].z; _dist0082 = min(1.00000000E+00, _dist0082); _light_intensity = (2.00000000E+00*_dist0082*_dist0082*_dist0082 - 3.00000000E+00*_dist0082*_dist0082) + 1.00000000E+00; _TMP7 = dot(gl_TexCoord[2].xyz, _light_dir_ws); _angle = -_TMP7; if (gl_TexCoord[6].y != gl_TexCoord[6].x) { // if begin _x0088 = (_angle - gl_TexCoord[6].x)/(gl_TexCoord[6].y - gl_TexCoord[6].x); _TMP15 = min(1.00000000E+00, _x0088); _TMP87 = max(0.00000000E+00, _TMP15); _light_intensity = _light_intensity*(1.00000000E+00 - _TMP87); } // end if _diff_exposure = dot(_normal_ws0050, _light_dir_ws); _diff_illumination = max(_diff_exposure, 0.00000000E+00); _diff_component = (_diff_colour0050*gl_TexCoord[3].xyz)*_diff_illumination; _TMP16 = dot(_normal_ws0050, _light_dir_ws); _TMP8 = _light_dir_ws - (2.00000000E+00*_normal_ws0050)*_TMP16; _TMP9 = dot(_TMP8, _camera_dir_ws); _spec_exposure = -_TMP9; _TMP10 = max(1.00000001E-07, _spec_exposure); _spec_illumination = pow(_TMP10, _gloss0050); _spec_component = (_spec_illumination*_spec_colour0050)*gl_TexCoord[4].xyz; _clarity0108 = _the_fog_params1.x*_cam_dist2.x; _x0110 = -_clarity0108*_clarity0108; _TMP109 = pow(2.71828198E+00, _x0110); _TMP15 = min(1.00000000E+00, _TMP109); _TMP113 = max(0.00000000E+00, _TMP15); _pixel1 = (_light_intensity*(_diff_component + _spec_component))*_TMP113; gl_FragColor.xyz = _pixel1; } // main end  Requested GpuProgramParameters for deferred_lights_f Replacing parameter names. replaced _bottom_left_ray1 with bottom_left_ray replaced _bottom_left_ray1[0] with bottom_left_ray[0] replaced _bottom_right_ray1 with bottom_right_ray replaced _bottom_right_ray1[0] with bottom_right_ray[0] replaced _camera_pos_ws1 with camera_pos_ws replaced _camera_pos_ws1[0] with camera_pos_ws[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _tex01 with tex0 replaced _tex01[0] with tex0[0] replaced _tex11 with tex1 replaced _tex11[0] with tex1[0] replaced _tex21 with tex2 replaced _tex21[0] with tex2[0] replaced _tex31 with tex3 replaced _tex31[0] with tex3[0] replaced _the_fog_params1 with the_fog_params replaced _the_fog_params1[0] with the_fog_params[0] replaced _top_left_ray1 with top_left_ray replaced _top_left_ray1[0] with top_left_ray[0] replaced _top_right_ray1 with top_right_ray replaced _top_right_ray1[0] with top_right_ray[0] Requested GpuProgramParameters for deferred_lights_v Requested GpuProgramParameters for deferred_lights_f Requested GpuProgramParameters for cast_f:d_o_0_0_w Requested GpuProgramParameters for cast_v:d_o_0_0_w Requested GpuProgramParameters for cast_f:d_o_0_0_W Requested GpuProgramParameters for cast_v:d_o_0_0_W Requested GpuProgramParameters for cast_f:d_o_1_0_w Requested GpuProgramParameters for cast_v:d_o_1_0_w Requested GpuProgramParameters for cast_f:d_o_1_0_W Requested GpuProgramParameters for cast_v:d_o_1_0_W Requested GpuProgramParameters for cast_f:d_o_2_0_w Requested GpuProgramParameters for cast_v:d_o_2_0_w Requested GpuProgramParameters for cast_f:d_o_2_0_W Requested GpuProgramParameters for cast_v:d_o_2_0_W Requested GpuProgramParameters for cast_f:d_o_3_0_w Requested GpuProgramParameters for cast_v:d_o_3_0_w Requested GpuProgramParameters for cast_f:d_o_3_0_W Requested GpuProgramParameters for cast_v:d_o_3_0_W Requested GpuProgramParameters for cast_f:d_o_4_0_w Requested GpuProgramParameters for cast_v:d_o_4_0_w Requested GpuProgramParameters for cast_f:d_o_4_0_W Requested GpuProgramParameters for cast_v:d_o_4_0_W Requested GpuProgramParameters for cast_f:d_o_0_0_w Requested GpuProgramParameters for cast_v:d_o_0_0_w Requested GpuProgramParameters for cast_f:d_o_0_0_W Requested GpuProgramParameters for cast_v:d_o_0_0_W Requested GpuProgramParameters for cast_f:d_o_1_0_w Requested GpuProgramParameters for cast_v:d_o_1_0_w Requested GpuProgramParameters for cast_f:d_o_1_0_W Requested GpuProgramParameters for cast_v:d_o_1_0_W Requested GpuProgramParameters for cast_f:d_o_2_0_w Requested GpuProgramParameters for cast_v:d_o_2_0_w Requested GpuProgramParameters for cast_f:d_o_2_0_W Requested GpuProgramParameters for cast_v:d_o_2_0_W Requested GpuProgramParameters for cast_f:d_o_3_0_w Requested GpuProgramParameters for cast_v:d_o_3_0_w Requested GpuProgramParameters for cast_f:d_o_3_0_W Requested GpuProgramParameters for cast_v:d_o_3_0_W Requested GpuProgramParameters for cast_f:d_o_4_0_w Requested GpuProgramParameters for cast_v:d_o_4_0_w Requested GpuProgramParameters for cast_f:d_o_4_0_W Requested GpuProgramParameters for cast_v:d_o_4_0_W Requested GpuProgramParameters for cast_f:d_o_4_0_w Requested GpuProgramParameters for cast_v:d_o_4_0_w Requested GpuProgramParameters for cast_f:d_o_4_0_W Requested GpuProgramParameters for cast_v:d_o_4_0_W Compiling shader: recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F 0 Cg output for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=0 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=0 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=0 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, -DEXTRA_MAP_ARGS=stipple_map, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS= -DNORMAL_MAPS= -DSPEC_MAPS= -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.bone_matrixes //semantic vp_main.world //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.camera_pos_ws //var float4x4 world : : _world2[0], 4 : 3 : 1 //var float4x4 view : : _view1[0], 4 : 4 : 1 //var float4x4 proj : : _proj1[0], 4 : 5 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float3 normal_os : $vin.NORMAL : ATTR2 : 1 : 1 //var float4 out00 : $vout.TEXCOORD0 : TEX0 : 7 : 1 //var float4 out01 : $vout.TEXCOORD1 : TEX1 : 8 : 1 //var float4 out02 : $vout.TEXCOORD2 : TEX2 : 9 : 1 //var float4 out03 : $vout.TEXCOORD3 : TEX3 : 10 : 1 //var float4 out04 : $vout.TEXCOORD4 : TEX4 : 11 : 1 //var float4 out05 : $vout.TEXCOORD5 : TEX5 : 12 : 1 //var float4 out06 : $vout.TEXCOORD6 : TEX6 : 13 : 1 //var float4 out07 : $vout.TEXCOORD7 : TEX7 : 14 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 15 : 1 //var float4 vert_colour : $vout.COLOR0 : COL0 : 16 : 1 vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform vec4 _world2[4]; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; vec4 _r0017; vec4 _v0017; vec4 _r0027; vec4 _v0027; vec4 _r0049; vec4 _v0049; vec4 _r0059; vec4 _v0059; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0017 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0017.x = dot(_world2[0], _v0017); _r0017.y = dot(_world2[1], _v0017); _r0017.z = dot(_world2[2], _v0017); _v0027 = vec4(gl_Normal.x, gl_Normal.y, gl_Normal.z, 0.00000000E+00); _r0027.x = dot(_world2[0], _v0027); _r0027.y = dot(_world2[1], _v0027); _r0027.z = dot(_world2[2], _v0027); _v0049 = vec4(_r0017.x, _r0017.y, _r0017.z, 1.00000000E+00); _r0049.x = dot(_view1[0], _v0049); _r0049.y = dot(_view1[1], _v0049); _r0049.z = dot(_view1[2], _v0049); _v0059 = vec4(_r0049.x, _r0049.y, _r0049.z, 1.00000000E+00); _r0059.x = dot(_proj1[0], _v0059); _r0059.y = dot(_proj1[1], _v0059); _r0059.z = dot(_proj1[2], _v0059); _r0059.w = dot(_proj1[3], _v0059); _for_rasteriser1 = _r0059; _out001.xyz = _r0027.xyz; _out011.w = -_r0049.z; _out021.w = 1.00000000E+00; _out031.w = 1.00000000E+00; _out041.y = 0.00000000E+00; _out041.z = 0.00000000E+00; gl_TexCoord[4] = _out041; gl_TexCoord[7] = _out071; gl_TexCoord[2] = _out021; gl_TexCoord[5] = _out051; gl_TexCoord[0] = _out001; gl_TexCoord[3] = _out031; gl_TexCoord[6] = _out061; gl_TexCoord[1] = _out011; gl_FrontColor = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); gl_Position = _r0059; } // main end  Cleaned Cg output for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F: vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform mat4 _world2; uniform mat4 _view1; uniform mat4 _proj1; vec4 _r0017; vec4 _v0017; vec4 _r0027; vec4 _v0027; vec4 _r0049; vec4 _v0049; vec4 _r0059; vec4 _v0059; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0017 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0017.x = dot(_world2[0], _v0017); _r0017.y = dot(_world2[1], _v0017); _r0017.z = dot(_world2[2], _v0017); _v0027 = vec4(gl_Normal.x, gl_Normal.y, gl_Normal.z, 0.00000000E+00); _r0027.x = dot(_world2[0], _v0027); _r0027.y = dot(_world2[1], _v0027); _r0027.z = dot(_world2[2], _v0027); _v0049 = vec4(_r0017.x, _r0017.y, _r0017.z, 1.00000000E+00); _r0049.x = dot(_view1[0], _v0049); _r0049.y = dot(_view1[1], _v0049); _r0049.z = dot(_view1[2], _v0049); _v0059 = vec4(_r0049.x, _r0049.y, _r0049.z, 1.00000000E+00); _r0059.x = dot(_proj1[0], _v0059); _r0059.y = dot(_proj1[1], _v0059); _r0059.z = dot(_proj1[2], _v0059); _r0059.w = dot(_proj1[3], _v0059); _for_rasteriser1 = _r0059; _out001.xyz = _r0027.xyz; _out011.w = -_r0049.z; _out021.w = 1.00000000E+00; _out031.w = 1.00000000E+00; _out041.y = 0.00000000E+00; _out041.z = 0.00000000E+00; gl_TexCoord[4] = _out041; gl_TexCoord[7] = _out071; gl_TexCoord[2] = _out021; gl_TexCoord[5] = _out051; gl_TexCoord[0] = _out001; gl_TexCoord[3] = _out031; gl_TexCoord[6] = _out061; gl_TexCoord[1] = _out011; gl_FrontColor = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); gl_Position = _r0059; } // main end  Getting default parameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Replacing parameters... Replacing parameter names. replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _view1 with view replaced _view1[0] with view[0] replaced _world2 with world replaced _world2[0] with world[0] Getting default parameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Cg output for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=0 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=0 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=0 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, -DEXTRA_MAP_ARGS=stipple_map, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS= -DNORMAL_MAPS= -DSPEC_MAPS= -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.stipple_map : TEXUNIT3 //semantic fp_main.spec_diff_brightness0 //semantic fp_main.spec_diff_contrast0 //semantic fp_main.uv_animation0 //semantic fp_main.uv_scale0 //semantic fp_main.uv0 //semantic fp_main.surf_diffuse //semantic fp_main.surf_specular //semantic fp_main.surf_gloss //semantic fp_main.shadow_oblique_cutoff //semantic fp_main.custom_param //semantic fp_main.alpha_rej //semantic fp_main.time //semantic fp_main.texture_size //semantic fp_main.col1 //semantic fp_main.col2 //semantic fp_main.col3 //semantic fp_main.col4 //semantic fp_main.col_spec1 //semantic fp_main.col_spec2 //semantic fp_main.col_spec3 //semantic fp_main.col_spec4 //semantic fp_main.microflakes_mask //semantic fp_main.render_target_flipping //semantic fp_main.far_clip_distance //var sampler2D stipple_map : TEXUNIT3 : _stipple_map2 3 : 11 : 1 //var float4 surf_diffuse : : _surf_diffuse2 : 17 : 1 //var float3 surf_specular : : _surf_specular2 : 18 : 1 //var float surf_gloss : : _surf_gloss2 : 19 : 1 //var float shadow_oblique_cutoff : : _shadow_oblique_cutoff2 : 20 : 1 //var float4 custom_param : : _custom_param1 : 21 : 1 //var float alpha_rej : : _alpha_rej2 : 22 : 1 //var float render_target_flipping : : _render_target_flipping3 : 34 : 1 //var float far_clip_distance : : _far_clip_distance1 : 35 : 1 //var float4 vert_colour : $vin.COLOR0 : COL0 : 0 : 1 //var float face : $vin.FACE : FACE : 1 : 1 //var float4 out00 : $vin.TEXCOORD0 : TEX0 : 2 : 1 //var float4 out01 : $vin.TEXCOORD1 : TEX1 : 3 : 1 //var float4 out02 : $vin.TEXCOORD2 : : 4 : 0 //var float4 out03 : $vin.TEXCOORD3 : : 5 : 0 //var float4 out04 : $vin.TEXCOORD4 : : 6 : 0 //var float4 out05 : $vin.TEXCOORD5 : : 7 : 0 //var float4 out06 : $vin.TEXCOORD6 : : 8 : 0 //var float4 out07 : $vin.TEXCOORD7 : : 9 : 0 //var float2 wpos : $vin.WPOS : WPOS : 10 : 1 //var float4 pixel0 : $vout.COLOR0 : COL : 36 : 1 //var float4 pixel1 : $vout.COLOR1 : COL1 : 37 : 1 //var float4 pixel2 : $vout.COLOR2 : COL2 : 38 : 1 //var float4 pixel3 : $vout.COLOR3 : COL3 : 39 : 1 #extension GL_ARB_draw_buffers : enable #extension GL_EXT_gpu_shader4 : enable vec4 _pixel01; vec4 _pixel21; vec4 _pixel11; vec4 _pixel31; vec3 _TMP5; float _TMP11; float _TMP10; float _TMP9; vec3 _TMP4; float _face3; float _TMP2; float _TMP7; float _TMP1; float _TMP0; uniform sampler2D _stipple_map2; uniform vec4 _surf_diffuse2; uniform vec3 _surf_specular2; uniform float _surf_gloss2; uniform float _shadow_oblique_cutoff2; uniform vec4 _custom_param1; uniform float _alpha_rej2; uniform float _render_target_flipping3; uniform float _far_clip_distance1; float _pixel_alpha0051; vec3 _normal_ws0051; vec3 _diff_colour0051; int _x10051; int _y10051; float _val0069; vec3 _TMP70; float _v0081; vec2 _uv0081; vec4 _TMP82; vec2 _uv0083; vec3 _normal_ws0086; float _gloss0086; vec4 _texel00086; vec4 _texel10086; vec4 _texel20086; vec4 _texel30086; vec3 _TMP370086; float _v0088; vec3 _r0088; float _x0090; float _x0092; // main procedure, the original name was fp_main void main() { vec3 _normal_ws2; float _cam_dist1; _face3 = float(gl_FrontFacing); _TMP0 = dot(gl_TexCoord[0].xyz, gl_TexCoord[0].xyz); _TMP1 = inversesqrt(_TMP0); _normal_ws2 = _TMP1*gl_TexCoord[0].xyz; _pixel_alpha0051 = gl_Color.w*_surf_diffuse2.w; if (_pixel_alpha0051 <= _alpha_rej2) { // if begin discard; } // end if _val0069 = float((_face3 > 0.00000000E+00)); _TMP7 = _val0069 - float((_face3 < 0.00000000E+00)); _TMP2 = --_render_target_flipping3*_TMP7; _normal_ws0051 = _normal_ws2*vec3(_TMP2, _TMP2, _TMP2); _TMP9 = pow(gl_Color.x, 2.20000005E+00); _TMP10 = pow(gl_Color.y, 2.20000005E+00); _TMP11 = pow(gl_Color.z, 2.20000005E+00); _TMP70 = vec3(_TMP9, _TMP10, _TMP11); _diff_colour0051 = _surf_diffuse2.xyz*_TMP70; if (_custom_param1.x < 1.00000000E+00) { // if begin _x10051 = int(gl_FragCoord.x)%8; _y10051 = int(gl_FragCoord.y)%8; _v0081 = _custom_param1.x*1.60000000E+01; _uv0081 = vec2(float(_x10051), float(_y10051)); _uv0081.x = _uv0081.x + float((8.00000000E+00*float((int(_v0081)%4)))); _uv0081.y = _uv0081.y + float((8.00000000E+00*float(int((_v0081/4.00000000E+00))))); _uv0083 = _uv0081/3.20000000E+01; _TMP82 = texture2DGrad(_stipple_map2, _uv0083, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP82.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _cam_dist1 = gl_TexCoord[1].w/_far_clip_distance1; _normal_ws0086 = _normal_ws0051*vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 1.96078443E-03, 1.96078443E-03, 1.96078443E-03); _gloss0086 = _surf_gloss2/5.00000000E+01; _v0088 = _cam_dist1*1.67772150E+07; _x0090 = (_v0088/2.56000000E+02)/2.56000000E+02; _r0088.x = floor(_x0090); _x0092 = (_v0088 - _r0088.x*2.56000000E+02*2.56000000E+02)/2.56000000E+02; _r0088.y = floor(_x0092); _r0088.z = (_v0088 - _r0088.x*2.56000000E+02*2.56000000E+02) - _r0088.y*2.56000000E+02; _TMP4 = _r0088/2.55000000E+02; _texel00086 = vec4(_TMP4.x, _TMP4.y, _TMP4.z, _shadow_oblique_cutoff2); _texel10086 = vec4(_normal_ws0086.x, _normal_ws0086.y, _normal_ws0086.z, 0.00000000E+00); _TMP9 = pow(_diff_colour0051.x, 4.54545438E-01); _TMP10 = pow(_diff_colour0051.y, 4.54545438E-01); _TMP11 = pow(_diff_colour0051.z, 4.54545438E-01); _TMP5 = vec3(_TMP9, _TMP10, _TMP11); _texel20086 = vec4(_TMP5.x, _TMP5.y, _TMP5.z, 0.00000000E+00); _TMP370086 = _surf_specular2/2.00000000E+00; _texel30086 = vec4(_TMP370086.x, _TMP370086.y, _TMP370086.z, _gloss0086); _pixel01 = _texel00086; _pixel11 = _texel10086; _pixel21 = _texel20086; _pixel31 = _texel30086; gl_FragData[3] = _texel30086; gl_FragData[1] = _texel10086; gl_FragData[2] = _texel20086; gl_FragData[0] = _texel00086; } // main end  Cleaned Cg output for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F: #extension GL_ARB_draw_buffers : enable #extension GL_EXT_gpu_shader4 : enable vec4 _pixel01; vec4 _pixel21; vec4 _pixel11; vec4 _pixel31; vec3 _TMP5; float _TMP11; float _TMP10; float _TMP9; vec3 _TMP4; float _face3; float _TMP2; float _TMP7; float _TMP1; float _TMP0; uniform sampler2D _stipple_map2; uniform vec4 _surf_diffuse2; uniform vec3 _surf_specular2; uniform float _surf_gloss2; uniform float _shadow_oblique_cutoff2; uniform vec4 _custom_param1; uniform float _alpha_rej2; uniform float _render_target_flipping3; uniform float _far_clip_distance1; float _pixel_alpha0051; vec3 _normal_ws0051; vec3 _diff_colour0051; int _x10051; int _y10051; float _val0069; vec3 _TMP70; float _v0081; vec2 _uv0081; vec4 _TMP82; vec2 _uv0083; vec3 _normal_ws0086; float _gloss0086; vec4 _texel00086; vec4 _texel10086; vec4 _texel20086; vec4 _texel30086; vec3 _TMP370086; float _v0088; vec3 _r0088; float _x0090; float _x0092; // main procedure, the original name was fp_main void main() { vec3 _normal_ws2; float _cam_dist1; _face3 = float(gl_FrontFacing); _TMP0 = dot(gl_TexCoord[0].xyz, gl_TexCoord[0].xyz); _TMP1 = inversesqrt(_TMP0); _normal_ws2 = _TMP1*gl_TexCoord[0].xyz; _pixel_alpha0051 = gl_Color.w*_surf_diffuse2.w; if (_pixel_alpha0051 <= _alpha_rej2) { // if begin discard; } // end if _val0069 = float((_face3 > 0.00000000E+00)); _TMP7 = _val0069 - float((_face3 < 0.00000000E+00)); _TMP2 = --_render_target_flipping3*_TMP7; _normal_ws0051 = _normal_ws2*vec3(_TMP2, _TMP2, _TMP2); _TMP9 = pow(gl_Color.x, 2.20000005E+00); _TMP10 = pow(gl_Color.y, 2.20000005E+00); _TMP11 = pow(gl_Color.z, 2.20000005E+00); _TMP70 = vec3(_TMP9, _TMP10, _TMP11); _diff_colour0051 = _surf_diffuse2.xyz*_TMP70; if (_custom_param1.x < 1.00000000E+00) { // if begin _x10051 = int(gl_FragCoord.x)%8; _y10051 = int(gl_FragCoord.y)%8; _v0081 = _custom_param1.x*1.60000000E+01; _uv0081 = vec2(float(_x10051), float(_y10051)); _uv0081.x = _uv0081.x + float((8.00000000E+00*float((int(_v0081)%4)))); _uv0081.y = _uv0081.y + float((8.00000000E+00*float(int((_v0081/4.00000000E+00))))); _uv0083 = _uv0081/3.20000000E+01; _TMP82 = texture2DGrad(_stipple_map2, _uv0083, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP82.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _cam_dist1 = gl_TexCoord[1].w/_far_clip_distance1; _normal_ws0086 = _normal_ws0051*vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 1.96078443E-03, 1.96078443E-03, 1.96078443E-03); _gloss0086 = _surf_gloss2/5.00000000E+01; _v0088 = _cam_dist1*1.67772150E+07; _x0090 = (_v0088/2.56000000E+02)/2.56000000E+02; _r0088.x = floor(_x0090); _x0092 = (_v0088 - _r0088.x*2.56000000E+02*2.56000000E+02)/2.56000000E+02; _r0088.y = floor(_x0092); _r0088.z = (_v0088 - _r0088.x*2.56000000E+02*2.56000000E+02) - _r0088.y*2.56000000E+02; _TMP4 = _r0088/2.55000000E+02; _texel00086 = vec4(_TMP4.x, _TMP4.y, _TMP4.z, _shadow_oblique_cutoff2); _texel10086 = vec4(_normal_ws0086.x, _normal_ws0086.y, _normal_ws0086.z, 0.00000000E+00); _TMP9 = pow(_diff_colour0051.x, 4.54545438E-01); _TMP10 = pow(_diff_colour0051.y, 4.54545438E-01); _TMP11 = pow(_diff_colour0051.z, 4.54545438E-01); _TMP5 = vec3(_TMP9, _TMP10, _TMP11); _texel20086 = vec4(_TMP5.x, _TMP5.y, _TMP5.z, 0.00000000E+00); _TMP370086 = _surf_specular2/2.00000000E+00; _texel30086 = vec4(_TMP370086.x, _TMP370086.y, _TMP370086.z, _gloss0086); _pixel01 = _texel00086; _pixel11 = _texel10086; _pixel21 = _texel20086; _pixel31 = _texel30086; gl_FragData[3] = _texel30086; gl_FragData[1] = _texel10086; gl_FragData[2] = _texel20086; gl_FragData[0] = _texel00086; } // main end  Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej2 with alpha_rej replaced _alpha_rej2[0] with alpha_rej[0] replaced _custom_param1 with custom_param replaced _custom_param1[0] with custom_param[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _render_target_flipping3 with render_target_flipping replaced _render_target_flipping3[0] with render_target_flipping[0] replaced _shadow_oblique_cutoff2 with shadow_oblique_cutoff replaced _shadow_oblique_cutoff2[0] with shadow_oblique_cutoff[0] replaced _stipple_map2 with stipple_map replaced _stipple_map2[0] with stipple_map[0] replaced _surf_diffuse2 with surf_diffuse replaced _surf_diffuse2[0] with surf_diffuse[0] replaced _surf_gloss2 with surf_gloss replaced _surf_gloss2[0] with surf_gloss[0] replaced _surf_specular2 with surf_specular replaced _surf_specular2[0] with surf_specular[0] Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Compiling shader: recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F 0 Cg output for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=0 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=0 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=1 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, -DEXTRA_MAP_ARGS=stipple_map, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS= -DNORMAL_MAPS= -DSPEC_MAPS= -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.bone_matrixes //semantic vp_main.world //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.camera_pos_ws //var float4x4 view : : _view1[0], 4 : 5 : 1 //var float4x4 proj : : _proj1[0], 4 : 6 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float3 normal_os : $vin.NORMAL : ATTR2 : 1 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 2 : 1 //var float4 out00 : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float4 out01 : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float4 out02 : $vout.TEXCOORD2 : TEX2 : 10 : 1 //var float4 out03 : $vout.TEXCOORD3 : TEX3 : 11 : 1 //var float4 out04 : $vout.TEXCOORD4 : TEX4 : 12 : 1 //var float4 out05 : $vout.TEXCOORD5 : TEX5 : 13 : 1 //var float4 out06 : $vout.TEXCOORD6 : TEX6 : 14 : 1 //var float4 out07 : $vout.TEXCOORD7 : TEX7 : 15 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 16 : 1 //var float4 vert_colour : $vout.COLOR0 : COL0 : 17 : 1 vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; vec4 _r0013; vec4 _v0013; vec4 _r0023; vec4 _v0023; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0013 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0013.x = dot(_view1[0], _v0013); _r0013.y = dot(_view1[1], _v0013); _r0013.z = dot(_view1[2], _v0013); _v0023 = vec4(_r0013.x, _r0013.y, _r0013.z, 1.00000000E+00); _r0023.x = dot(_proj1[0], _v0023); _r0023.y = dot(_proj1[1], _v0023); _r0023.z = dot(_proj1[2], _v0023); _r0023.w = dot(_proj1[3], _v0023); _for_rasteriser1 = _r0023; _out001.xyz = gl_Normal; _out011.w = -_r0013.z; _out021.w = 1.00000000E+00; _out031.w = 1.00000000E+00; _out041.y = 0.00000000E+00; _out041.z = 0.00000000E+00; _out041.w = gl_MultiTexCoord1.x; gl_TexCoord[4] = _out041; gl_TexCoord[7] = _out071; gl_TexCoord[2] = _out021; gl_TexCoord[5] = _out051; gl_TexCoord[0] = _out001; gl_TexCoord[3] = _out031; gl_TexCoord[6] = _out061; gl_TexCoord[1] = _out011; gl_FrontColor = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); gl_Position = _r0023; } // main end  Cleaned Cg output for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F: vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform mat4 _view1; uniform mat4 _proj1; vec4 _r0013; vec4 _v0013; vec4 _r0023; vec4 _v0023; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0013 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0013.x = dot(_view1[0], _v0013); _r0013.y = dot(_view1[1], _v0013); _r0013.z = dot(_view1[2], _v0013); _v0023 = vec4(_r0013.x, _r0013.y, _r0013.z, 1.00000000E+00); _r0023.x = dot(_proj1[0], _v0023); _r0023.y = dot(_proj1[1], _v0023); _r0023.z = dot(_proj1[2], _v0023); _r0023.w = dot(_proj1[3], _v0023); _for_rasteriser1 = _r0023; _out001.xyz = gl_Normal; _out011.w = -_r0013.z; _out021.w = 1.00000000E+00; _out031.w = 1.00000000E+00; _out041.y = 0.00000000E+00; _out041.z = 0.00000000E+00; _out041.w = gl_MultiTexCoord1.x; gl_TexCoord[4] = _out041; gl_TexCoord[7] = _out071; gl_TexCoord[2] = _out021; gl_TexCoord[5] = _out051; gl_TexCoord[0] = _out001; gl_TexCoord[3] = _out031; gl_TexCoord[6] = _out061; gl_TexCoord[1] = _out011; gl_FrontColor = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); gl_Position = _r0023; } // main end  Getting default parameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Replacing parameters... Replacing parameter names. replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _view1 with view replaced _view1[0] with view[0] Getting default parameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Cg output for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=0 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=0 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=1 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, -DEXTRA_MAP_ARGS=stipple_map, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS= -DNORMAL_MAPS= -DSPEC_MAPS= -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.stipple_map : TEXUNIT3 //semantic fp_main.spec_diff_brightness0 //semantic fp_main.spec_diff_contrast0 //semantic fp_main.uv_animation0 //semantic fp_main.uv_scale0 //semantic fp_main.uv0 //semantic fp_main.surf_diffuse //semantic fp_main.surf_specular //semantic fp_main.surf_gloss //semantic fp_main.shadow_oblique_cutoff //semantic fp_main.custom_param //semantic fp_main.alpha_rej //semantic fp_main.time //semantic fp_main.texture_size //semantic fp_main.col1 //semantic fp_main.col2 //semantic fp_main.col3 //semantic fp_main.col4 //semantic fp_main.col_spec1 //semantic fp_main.col_spec2 //semantic fp_main.col_spec3 //semantic fp_main.col_spec4 //semantic fp_main.microflakes_mask //semantic fp_main.render_target_flipping //semantic fp_main.far_clip_distance //var sampler2D stipple_map : TEXUNIT3 : _stipple_map2 3 : 11 : 1 //var float4 surf_diffuse : : _surf_diffuse2 : 17 : 1 //var float3 surf_specular : : _surf_specular2 : 18 : 1 //var float surf_gloss : : _surf_gloss2 : 19 : 1 //var float shadow_oblique_cutoff : : _shadow_oblique_cutoff2 : 20 : 1 //var float alpha_rej : : _alpha_rej2 : 22 : 1 //var float render_target_flipping : : _render_target_flipping3 : 34 : 1 //var float far_clip_distance : : _far_clip_distance1 : 35 : 1 //var float4 vert_colour : $vin.COLOR0 : COL0 : 0 : 1 //var float face : $vin.FACE : FACE : 1 : 1 //var float4 out00 : $vin.TEXCOORD0 : TEX0 : 2 : 1 //var float4 out01 : $vin.TEXCOORD1 : TEX1 : 3 : 1 //var float4 out02 : $vin.TEXCOORD2 : : 4 : 0 //var float4 out03 : $vin.TEXCOORD3 : : 5 : 0 //var float4 out04 : $vin.TEXCOORD4 : TEX4 : 6 : 1 //var float4 out05 : $vin.TEXCOORD5 : : 7 : 0 //var float4 out06 : $vin.TEXCOORD6 : : 8 : 0 //var float4 out07 : $vin.TEXCOORD7 : : 9 : 0 //var float2 wpos : $vin.WPOS : WPOS : 10 : 1 //var float4 pixel0 : $vout.COLOR0 : COL : 36 : 1 //var float4 pixel1 : $vout.COLOR1 : COL1 : 37 : 1 //var float4 pixel2 : $vout.COLOR2 : COL2 : 38 : 1 //var float4 pixel3 : $vout.COLOR3 : COL3 : 39 : 1 #extension GL_ARB_draw_buffers : enable #extension GL_EXT_gpu_shader4 : enable vec4 _pixel01; vec4 _pixel21; vec4 _pixel11; vec4 _pixel31; vec3 _TMP5; float _TMP11; float _TMP10; float _TMP9; vec3 _TMP4; float _face3; float _TMP2; float _TMP7; float _TMP1; float _TMP0; uniform sampler2D _stipple_map2; uniform vec4 _surf_diffuse2; uniform vec3 _surf_specular2; uniform float _surf_gloss2; uniform float _shadow_oblique_cutoff2; uniform float _alpha_rej2; uniform float _render_target_flipping3; uniform float _far_clip_distance1; float _pixel_alpha0051; vec3 _normal_ws0051; vec3 _diff_colour0051; float _v0051; int _x10051; int _y10051; float _val0069; vec3 _TMP70; float _v0081; vec2 _uv0081; vec4 _TMP82; vec2 _uv0083; vec3 _normal_ws0086; float _gloss0086; vec4 _texel00086; vec4 _texel10086; vec4 _texel20086; vec4 _texel30086; vec3 _TMP370086; float _v0088; vec3 _r0088; float _x0090; float _x0092; // main procedure, the original name was fp_main void main() { vec3 _normal_ws2; float _cam_dist1; _face3 = float(gl_FrontFacing); _TMP0 = dot(gl_TexCoord[0].xyz, gl_TexCoord[0].xyz); _TMP1 = inversesqrt(_TMP0); _normal_ws2 = _TMP1*gl_TexCoord[0].xyz; _pixel_alpha0051 = gl_Color.w*_surf_diffuse2.w; if (_pixel_alpha0051 <= _alpha_rej2) { // if begin discard; } // end if _val0069 = float((_face3 > 0.00000000E+00)); _TMP7 = _val0069 - float((_face3 < 0.00000000E+00)); _TMP2 = --_render_target_flipping3*_TMP7; _normal_ws0051 = _normal_ws2*vec3(_TMP2, _TMP2, _TMP2); _TMP9 = pow(gl_Color.x, 2.20000005E+00); _TMP10 = pow(gl_Color.y, 2.20000005E+00); _TMP11 = pow(gl_Color.z, 2.20000005E+00); _TMP70 = vec3(_TMP9, _TMP10, _TMP11); _diff_colour0051 = _surf_diffuse2.xyz*_TMP70; _v0051 = gl_TexCoord[4].w + 1.95312500E-03; if (_v0051 < 1.00000000E+00) { // if begin _x10051 = int(gl_FragCoord.x)%8; _y10051 = int(gl_FragCoord.y)%8; _v0081 = _v0051*1.60000000E+01; _uv0081 = vec2(float(_x10051), float(_y10051)); _uv0081.x = _uv0081.x + float((8.00000000E+00*float((int(_v0081)%4)))); _uv0081.y = _uv0081.y + float((8.00000000E+00*float(int((_v0081/4.00000000E+00))))); _uv0083 = _uv0081/3.20000000E+01; _TMP82 = texture2DGrad(_stipple_map2, _uv0083, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP82.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _cam_dist1 = gl_TexCoord[1].w/_far_clip_distance1; _normal_ws0086 = _normal_ws0051*vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 1.96078443E-03, 1.96078443E-03, 1.96078443E-03); _gloss0086 = _surf_gloss2/5.00000000E+01; _v0088 = _cam_dist1*1.67772150E+07; _x0090 = (_v0088/2.56000000E+02)/2.56000000E+02; _r0088.x = floor(_x0090); _x0092 = (_v0088 - _r0088.x*2.56000000E+02*2.56000000E+02)/2.56000000E+02; _r0088.y = floor(_x0092); _r0088.z = (_v0088 - _r0088.x*2.56000000E+02*2.56000000E+02) - _r0088.y*2.56000000E+02; _TMP4 = _r0088/2.55000000E+02; _texel00086 = vec4(_TMP4.x, _TMP4.y, _TMP4.z, _shadow_oblique_cutoff2); _texel10086 = vec4(_normal_ws0086.x, _normal_ws0086.y, _normal_ws0086.z, 0.00000000E+00); _TMP9 = pow(_diff_colour0051.x, 4.54545438E-01); _TMP10 = pow(_diff_colour0051.y, 4.54545438E-01); _TMP11 = pow(_diff_colour0051.z, 4.54545438E-01); _TMP5 = vec3(_TMP9, _TMP10, _TMP11); _texel20086 = vec4(_TMP5.x, _TMP5.y, _TMP5.z, 0.00000000E+00); _TMP370086 = _surf_specular2/2.00000000E+00; _texel30086 = vec4(_TMP370086.x, _TMP370086.y, _TMP370086.z, _gloss0086); _pixel01 = _texel00086; _pixel11 = _texel10086; _pixel21 = _texel20086; _pixel31 = _texel30086; gl_FragData[3] = _texel30086; gl_FragData[1] = _texel10086; gl_FragData[2] = _texel20086; gl_FragData[0] = _texel00086; } // main end  Cleaned Cg output for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F: #extension GL_ARB_draw_buffers : enable #extension GL_EXT_gpu_shader4 : enable vec4 _pixel01; vec4 _pixel21; vec4 _pixel11; vec4 _pixel31; vec3 _TMP5; float _TMP11; float _TMP10; float _TMP9; vec3 _TMP4; float _face3; float _TMP2; float _TMP7; float _TMP1; float _TMP0; uniform sampler2D _stipple_map2; uniform vec4 _surf_diffuse2; uniform vec3 _surf_specular2; uniform float _surf_gloss2; uniform float _shadow_oblique_cutoff2; uniform float _alpha_rej2; uniform float _render_target_flipping3; uniform float _far_clip_distance1; float _pixel_alpha0051; vec3 _normal_ws0051; vec3 _diff_colour0051; float _v0051; int _x10051; int _y10051; float _val0069; vec3 _TMP70; float _v0081; vec2 _uv0081; vec4 _TMP82; vec2 _uv0083; vec3 _normal_ws0086; float _gloss0086; vec4 _texel00086; vec4 _texel10086; vec4 _texel20086; vec4 _texel30086; vec3 _TMP370086; float _v0088; vec3 _r0088; float _x0090; float _x0092; // main procedure, the original name was fp_main void main() { vec3 _normal_ws2; float _cam_dist1; _face3 = float(gl_FrontFacing); _TMP0 = dot(gl_TexCoord[0].xyz, gl_TexCoord[0].xyz); _TMP1 = inversesqrt(_TMP0); _normal_ws2 = _TMP1*gl_TexCoord[0].xyz; _pixel_alpha0051 = gl_Color.w*_surf_diffuse2.w; if (_pixel_alpha0051 <= _alpha_rej2) { // if begin discard; } // end if _val0069 = float((_face3 > 0.00000000E+00)); _TMP7 = _val0069 - float((_face3 < 0.00000000E+00)); _TMP2 = --_render_target_flipping3*_TMP7; _normal_ws0051 = _normal_ws2*vec3(_TMP2, _TMP2, _TMP2); _TMP9 = pow(gl_Color.x, 2.20000005E+00); _TMP10 = pow(gl_Color.y, 2.20000005E+00); _TMP11 = pow(gl_Color.z, 2.20000005E+00); _TMP70 = vec3(_TMP9, _TMP10, _TMP11); _diff_colour0051 = _surf_diffuse2.xyz*_TMP70; _v0051 = gl_TexCoord[4].w + 1.95312500E-03; if (_v0051 < 1.00000000E+00) { // if begin _x10051 = int(gl_FragCoord.x)%8; _y10051 = int(gl_FragCoord.y)%8; _v0081 = _v0051*1.60000000E+01; _uv0081 = vec2(float(_x10051), float(_y10051)); _uv0081.x = _uv0081.x + float((8.00000000E+00*float((int(_v0081)%4)))); _uv0081.y = _uv0081.y + float((8.00000000E+00*float(int((_v0081/4.00000000E+00))))); _uv0083 = _uv0081/3.20000000E+01; _TMP82 = texture2DGrad(_stipple_map2, _uv0083, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP82.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _cam_dist1 = gl_TexCoord[1].w/_far_clip_distance1; _normal_ws0086 = _normal_ws0051*vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 1.96078443E-03, 1.96078443E-03, 1.96078443E-03); _gloss0086 = _surf_gloss2/5.00000000E+01; _v0088 = _cam_dist1*1.67772150E+07; _x0090 = (_v0088/2.56000000E+02)/2.56000000E+02; _r0088.x = floor(_x0090); _x0092 = (_v0088 - _r0088.x*2.56000000E+02*2.56000000E+02)/2.56000000E+02; _r0088.y = floor(_x0092); _r0088.z = (_v0088 - _r0088.x*2.56000000E+02*2.56000000E+02) - _r0088.y*2.56000000E+02; _TMP4 = _r0088/2.55000000E+02; _texel00086 = vec4(_TMP4.x, _TMP4.y, _TMP4.z, _shadow_oblique_cutoff2); _texel10086 = vec4(_normal_ws0086.x, _normal_ws0086.y, _normal_ws0086.z, 0.00000000E+00); _TMP9 = pow(_diff_colour0051.x, 4.54545438E-01); _TMP10 = pow(_diff_colour0051.y, 4.54545438E-01); _TMP11 = pow(_diff_colour0051.z, 4.54545438E-01); _TMP5 = vec3(_TMP9, _TMP10, _TMP11); _texel20086 = vec4(_TMP5.x, _TMP5.y, _TMP5.z, 0.00000000E+00); _TMP370086 = _surf_specular2/2.00000000E+00; _texel30086 = vec4(_TMP370086.x, _TMP370086.y, _TMP370086.z, _gloss0086); _pixel01 = _texel00086; _pixel11 = _texel10086; _pixel21 = _texel20086; _pixel31 = _texel30086; gl_FragData[3] = _texel30086; gl_FragData[1] = _texel10086; gl_FragData[2] = _texel20086; gl_FragData[0] = _texel00086; } // main end  Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej2 with alpha_rej replaced _alpha_rej2[0] with alpha_rej[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _render_target_flipping3 with render_target_flipping replaced _render_target_flipping3[0] with render_target_flipping[0] replaced _shadow_oblique_cutoff2 with shadow_oblique_cutoff replaced _shadow_oblique_cutoff2[0] with shadow_oblique_cutoff[0] replaced _stipple_map2 with stipple_map replaced _stipple_map2[0] with stipple_map[0] replaced _surf_diffuse2 with surf_diffuse replaced _surf_diffuse2[0] with surf_diffuse[0] replaced _surf_gloss2 with surf_gloss replaced _surf_gloss2[0] with surf_gloss[0] replaced _surf_specular2 with surf_specular replaced _surf_specular2[0] with surf_specular[0] Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Loading env.lua Requested GpuProgramParameters for /system/SkyDefault_v Requested GpuProgramParameters for /system/SkyDefault_f Requested GpuProgramParameters for /system/SkyProgram_v Requested GpuProgramParameters for /system/SkyProgram_f Requested GpuProgramParameters for /system/SkyDefault_v Requested GpuProgramParameters for /system/SkyDefault_f Loading audio.lua Loading common assets Requested GpuProgramParameters for particle_f:A_E Requested GpuProgramParameters for particle_v:A_E Requested GpuProgramParameters for particle_f:A_e Requested GpuProgramParameters for particle_v:A_e Requested GpuProgramParameters for particle_f:A_e Requested GpuProgramParameters for particle_v:A_e Requested GpuProgramParameters for particle_f:A_e Requested GpuProgramParameters for particle_v:A_e Requested GpuProgramParameters for particle_f:A_e Requested GpuProgramParameters for particle_v:A_e Requested GpuProgramParameters for particle_f:A_e Requested GpuProgramParameters for particle_v:A_e Requested GpuProgramParameters for particle_f:L_E Requested GpuProgramParameters for particle_v:L_E Requested GpuProgramParameters for particle_f:L_E Requested GpuProgramParameters for particle_v:L_E Requested GpuProgramParameters for particle_f:P_E Requested GpuProgramParameters for particle_v:P_E Requested GpuProgramParameters for particle_f:A_E Requested GpuProgramParameters for particle_v:A_E Requested GpuProgramParameters for particle_f:L_E Requested GpuProgramParameters for particle_v:L_E Requested GpuProgramParameters for particle_f:P_E Requested GpuProgramParameters for particle_v:P_E Requested GpuProgramParameters for particle_f:O_e Requested GpuProgramParameters for particle_v:O_e Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Compiling shader: recv_v:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F 0 Cg output for recv_v:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=1 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=0 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=0 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3),uniform sampler2D diffuse_map0 : register(s4), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, sampler2D diffuse_map0, -DEXTRA_MAP_ARGS=stipple_map, diffuse_map0, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS=diffuse_map0, -DNORMAL_MAPS= -DSPEC_MAPS= -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.bone_matrixes //semantic vp_main.world //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.camera_pos_ws //var float4x4 world : : _world2[0], 4 : 4 : 1 //var float4x4 view : : _view1[0], 4 : 5 : 1 //var float4x4 proj : : _proj1[0], 4 : 6 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float3 normal_os : $vin.NORMAL : ATTR2 : 1 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 2 : 1 //var float4 out00 : $vout.TEXCOORD0 : TEX0 : 8 : 1 //var float4 out01 : $vout.TEXCOORD1 : TEX1 : 9 : 1 //var float4 out02 : $vout.TEXCOORD2 : TEX2 : 10 : 1 //var float4 out03 : $vout.TEXCOORD3 : TEX3 : 11 : 1 //var float4 out04 : $vout.TEXCOORD4 : TEX4 : 12 : 1 //var float4 out05 : $vout.TEXCOORD5 : TEX5 : 13 : 1 //var float4 out06 : $vout.TEXCOORD6 : TEX6 : 14 : 1 //var float4 out07 : $vout.TEXCOORD7 : TEX7 : 15 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 16 : 1 //var float4 vert_colour : $vout.COLOR0 : COL0 : 17 : 1 vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform vec4 _world2[4]; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; vec4 _r0017; vec4 _v0017; vec4 _r0027; vec4 _v0027; vec4 _r0049; vec4 _v0049; vec4 _r0059; vec4 _v0059; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0017 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0017.x = dot(_world2[0], _v0017); _r0017.y = dot(_world2[1], _v0017); _r0017.z = dot(_world2[2], _v0017); _v0027 = vec4(gl_Normal.x, gl_Normal.y, gl_Normal.z, 0.00000000E+00); _r0027.x = dot(_world2[0], _v0027); _r0027.y = dot(_world2[1], _v0027); _r0027.z = dot(_world2[2], _v0027); _v0049 = vec4(_r0017.x, _r0017.y, _r0017.z, 1.00000000E+00); _r0049.x = dot(_view1[0], _v0049); _r0049.y = dot(_view1[1], _v0049); _r0049.z = dot(_view1[2], _v0049); _v0059 = vec4(_r0049.x, _r0049.y, _r0049.z, 1.00000000E+00); _r0059.x = dot(_proj1[0], _v0059); _r0059.y = dot(_proj1[1], _v0059); _r0059.z = dot(_proj1[2], _v0059); _r0059.w = dot(_proj1[3], _v0059); _for_rasteriser1 = _r0059; _out001.xyz = _r0027.xyz; _out011.w = -_r0049.z; _out021.w = gl_MultiTexCoord0.x; _out031.w = gl_MultiTexCoord0.y; _out041.y = 0.00000000E+00; _out041.z = 0.00000000E+00; gl_TexCoord[4] = _out041; gl_TexCoord[7] = _out071; gl_TexCoord[2] = _out021; gl_TexCoord[5] = _out051; gl_TexCoord[0] = _out001; gl_TexCoord[3] = _out031; gl_TexCoord[6] = _out061; gl_TexCoord[1] = _out011; gl_FrontColor = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); gl_Position = _r0059; } // main end  Cleaned Cg output for recv_v:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F: vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform mat4 _world2; uniform mat4 _view1; uniform mat4 _proj1; vec4 _r0017; vec4 _v0017; vec4 _r0027; vec4 _v0027; vec4 _r0049; vec4 _v0049; vec4 _r0059; vec4 _v0059; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0017 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0017.x = dot(_world2[0], _v0017); _r0017.y = dot(_world2[1], _v0017); _r0017.z = dot(_world2[2], _v0017); _v0027 = vec4(gl_Normal.x, gl_Normal.y, gl_Normal.z, 0.00000000E+00); _r0027.x = dot(_world2[0], _v0027); _r0027.y = dot(_world2[1], _v0027); _r0027.z = dot(_world2[2], _v0027); _v0049 = vec4(_r0017.x, _r0017.y, _r0017.z, 1.00000000E+00); _r0049.x = dot(_view1[0], _v0049); _r0049.y = dot(_view1[1], _v0049); _r0049.z = dot(_view1[2], _v0049); _v0059 = vec4(_r0049.x, _r0049.y, _r0049.z, 1.00000000E+00); _r0059.x = dot(_proj1[0], _v0059); _r0059.y = dot(_proj1[1], _v0059); _r0059.z = dot(_proj1[2], _v0059); _r0059.w = dot(_proj1[3], _v0059); _for_rasteriser1 = _r0059; _out001.xyz = _r0027.xyz; _out011.w = -_r0049.z; _out021.w = gl_MultiTexCoord0.x; _out031.w = gl_MultiTexCoord0.y; _out041.y = 0.00000000E+00; _out041.z = 0.00000000E+00; gl_TexCoord[4] = _out041; gl_TexCoord[7] = _out071; gl_TexCoord[2] = _out021; gl_TexCoord[5] = _out051; gl_TexCoord[0] = _out001; gl_TexCoord[3] = _out031; gl_TexCoord[6] = _out061; gl_TexCoord[1] = _out011; gl_FrontColor = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); gl_Position = _r0059; } // main end  Getting default parameters for recv_v:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Replacing parameters... Replacing parameter names. replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _view1 with view replaced _view1[0] with view[0] replaced _world2 with world replaced _world2[0] with world[0] Getting default parameters for recv_v:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_v:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Cg output for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=1 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=0 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=0 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3),uniform sampler2D diffuse_map0 : register(s4), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, sampler2D diffuse_map0, -DEXTRA_MAP_ARGS=stipple_map, diffuse_map0, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS=diffuse_map0, -DNORMAL_MAPS= -DSPEC_MAPS= -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.stipple_map : TEXUNIT3 //semantic fp_main.diffuse_map0 : TEXUNIT4 //semantic fp_main.spec_diff_brightness0 //semantic fp_main.spec_diff_contrast0 //semantic fp_main.uv_animation0 //semantic fp_main.uv_scale0 //semantic fp_main.uv0 //semantic fp_main.surf_diffuse //semantic fp_main.surf_specular //semantic fp_main.surf_gloss //semantic fp_main.shadow_oblique_cutoff //semantic fp_main.custom_param //semantic fp_main.alpha_rej //semantic fp_main.time //semantic fp_main.texture_size //semantic fp_main.col1 //semantic fp_main.col2 //semantic fp_main.col3 //semantic fp_main.col4 //semantic fp_main.col_spec1 //semantic fp_main.col_spec2 //semantic fp_main.col_spec3 //semantic fp_main.col_spec4 //semantic fp_main.microflakes_mask //semantic fp_main.render_target_flipping //semantic fp_main.far_clip_distance //var sampler2D stipple_map : TEXUNIT3 : _stipple_map2 3 : 11 : 1 //var sampler2D diffuse_map0 : TEXUNIT4 : _diffuse_map02 4 : 12 : 1 //var float2 uv_animation0 : : _uv_animation02 : 15 : 1 //var float2 uv_scale0 : : _uv_scale02 : 16 : 1 //var float4 surf_diffuse : : _surf_diffuse2 : 18 : 1 //var float3 surf_specular : : _surf_specular2 : 19 : 1 //var float surf_gloss : : _surf_gloss2 : 20 : 1 //var float shadow_oblique_cutoff : : _shadow_oblique_cutoff2 : 21 : 1 //var float4 custom_param : : _custom_param1 : 22 : 1 //var float alpha_rej : : _alpha_rej2 : 23 : 1 //var float4 time : : _time2 : 24 : 1 //var float render_target_flipping : : _render_target_flipping3 : 35 : 1 //var float far_clip_distance : : _far_clip_distance1 : 36 : 1 //var float4 vert_colour : $vin.COLOR0 : COL0 : 0 : 1 //var float face : $vin.FACE : FACE : 1 : 1 //var float4 out00 : $vin.TEXCOORD0 : TEX0 : 2 : 1 //var float4 out01 : $vin.TEXCOORD1 : TEX1 : 3 : 1 //var float4 out02 : $vin.TEXCOORD2 : TEX2 : 4 : 1 //var float4 out03 : $vin.TEXCOORD3 : TEX3 : 5 : 1 //var float4 out04 : $vin.TEXCOORD4 : : 6 : 0 //var float4 out05 : $vin.TEXCOORD5 : : 7 : 0 //var float4 out06 : $vin.TEXCOORD6 : : 8 : 0 //var float4 out07 : $vin.TEXCOORD7 : : 9 : 0 //var float2 wpos : $vin.WPOS : WPOS : 10 : 1 //var float4 pixel0 : $vout.COLOR0 : COL : 37 : 1 //var float4 pixel1 : $vout.COLOR1 : COL1 : 38 : 1 //var float4 pixel2 : $vout.COLOR2 : COL2 : 39 : 1 //var float4 pixel3 : $vout.COLOR3 : COL3 : 40 : 1 #extension GL_ARB_draw_buffers : enable #extension GL_EXT_gpu_shader4 : enable vec4 _pixel01; vec4 _pixel21; vec4 _pixel11; vec4 _pixel31; vec3 _TMP6; float _TMP12; float _TMP11; float _TMP10; vec3 _TMP5; float _face3; float _TMP3; float _TMP8; float _TMP1; float _TMP0; uniform sampler2D _stipple_map2; uniform sampler2D _diffuse_map02; uniform vec2 _uv_animation02; uniform vec2 _uv_scale02; uniform vec4 _surf_diffuse2; uniform vec3 _surf_specular2; uniform float _surf_gloss2; uniform float _shadow_oblique_cutoff2; uniform vec4 _custom_param1; uniform float _alpha_rej2; uniform vec4 _time2; uniform float _render_target_flipping3; uniform float _far_clip_distance1; vec2 _uv0054[1]; vec2 _uv_ddx0054[1]; vec2 _uv_ddy0054[1]; float _highest10054; float _max_contribution0054[1]; float _total10054; float _pixel_alpha0054; vec4 _diff_txl0054[1]; float _contribution0054[1]; float _total20054; vec3 _normal_ws0054; vec3 _diff_colour0054; int _x10054; int _y10054; float _b0062; vec4 _TMP65; float _val0078; vec3 _TMP79; vec3 _TMP89; float _v0100; vec2 _uv0100; vec4 _TMP101; vec2 _uv0102; vec3 _normal_ws0105; float _gloss0105; vec4 _texel00105; vec4 _texel10105; vec4 _texel20105; vec4 _texel30105; vec3 _TMP390105; float _v0107; vec3 _r0107; float _x0109; float _x0111; // main procedure, the original name was fp_main void main() { vec3 _normal_ws2; vec2 _uv0_; float _cam_dist1; _face3 = float(gl_FrontFacing); _TMP0 = dot(gl_TexCoord[0].xyz, gl_TexCoord[0].xyz); _TMP1 = inversesqrt(_TMP0); _normal_ws2 = _TMP1*gl_TexCoord[0].xyz; _uv0_ = vec2(gl_TexCoord[2].w, gl_TexCoord[3].w); _uv0054[0] = _uv0_*_uv_scale02; _uv0054[0] = _uv0054[0] + _time2.x*_uv_animation02; _uv_ddx0054[0] = dFdx(_uv0054[0]); _uv_ddy0054[0] = dFdy(_uv0054[0]); _highest10054 = max(0.00000000E+00, 1.00000000E+00); _b0062 = _highest10054 + (1.49804688E+00 - _highest10054); _max_contribution0054[0] = max(0.00000000E+00, _b0062); _total10054 = 1.00000000E+00/_max_contribution0054[0]; _max_contribution0054[0] = _max_contribution0054[0]*_total10054; _pixel_alpha0054 = gl_Color.w*_surf_diffuse2.w; if (false || _max_contribution0054[0] > 0.00000000E+00) { // if begin _TMP65 = texture2DGrad(_diffuse_map02, _uv0054[0], _uv_ddx0054[0], _uv_ddy0054[0]); _diff_txl0054[0] = _TMP65; } else { _diff_txl0054[0] = vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if _pixel_alpha0054 = _pixel_alpha0054*_diff_txl0054[0].w; if (_pixel_alpha0054 <= _alpha_rej2) { // if begin discard; } // end if _contribution0054[0] = max(0.00000000E+00, 1.00000000E+00); _total20054 = 1.00000000E+00/_contribution0054[0]; _contribution0054[0] = _contribution0054[0]*_total20054; if (_contribution0054[0] > 0.00000000E+00) { // if begin _diff_txl0054[0].xyz = _diff_txl0054[0].xyz*vec3(_contribution0054[0], _contribution0054[0], _contribution0054[0]); } else { _diff_txl0054[0].xyz = vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if _val0078 = float((_face3 > 0.00000000E+00)); _TMP8 = _val0078 - float((_face3 < 0.00000000E+00)); _TMP3 = --_render_target_flipping3*_TMP8; _normal_ws0054 = _normal_ws2*vec3(_TMP3, _TMP3, _TMP3); _TMP10 = pow(_diff_txl0054[0].x, 2.20000005E+00); _TMP11 = pow(_diff_txl0054[0].y, 2.20000005E+00); _TMP12 = pow(_diff_txl0054[0].z, 2.20000005E+00); _TMP79 = vec3(_TMP10, _TMP11, _TMP12); _TMP10 = pow(gl_Color.x, 2.20000005E+00); _TMP11 = pow(gl_Color.y, 2.20000005E+00); _TMP12 = pow(gl_Color.z, 2.20000005E+00); _TMP89 = vec3(_TMP10, _TMP11, _TMP12); _diff_colour0054 = _surf_diffuse2.xyz*_TMP79*_TMP89; if (_custom_param1.x < 1.00000000E+00) { // if begin _x10054 = int(gl_FragCoord.x)%8; _y10054 = int(gl_FragCoord.y)%8; _v0100 = _custom_param1.x*1.60000000E+01; _uv0100 = vec2(float(_x10054), float(_y10054)); _uv0100.x = _uv0100.x + float((8.00000000E+00*float((int(_v0100)%4)))); _uv0100.y = _uv0100.y + float((8.00000000E+00*float(int((_v0100/4.00000000E+00))))); _uv0102 = _uv0100/3.20000000E+01; _TMP101 = texture2DGrad(_stipple_map2, _uv0102, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP101.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _cam_dist1 = gl_TexCoord[1].w/_far_clip_distance1; _normal_ws0105 = _normal_ws0054*vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 1.96078443E-03, 1.96078443E-03, 1.96078443E-03); _gloss0105 = _surf_gloss2/5.00000000E+01; _v0107 = _cam_dist1*1.67772150E+07; _x0109 = (_v0107/2.56000000E+02)/2.56000000E+02; _r0107.x = floor(_x0109); _x0111 = (_v0107 - _r0107.x*2.56000000E+02*2.56000000E+02)/2.56000000E+02; _r0107.y = floor(_x0111); _r0107.z = (_v0107 - _r0107.x*2.56000000E+02*2.56000000E+02) - _r0107.y*2.56000000E+02; _TMP5 = _r0107/2.55000000E+02; _texel00105 = vec4(_TMP5.x, _TMP5.y, _TMP5.z, _shadow_oblique_cutoff2); _texel10105 = vec4(_normal_ws0105.x, _normal_ws0105.y, _normal_ws0105.z, 0.00000000E+00); _TMP10 = pow(_diff_colour0054.x, 4.54545438E-01); _TMP11 = pow(_diff_colour0054.y, 4.54545438E-01); _TMP12 = pow(_diff_colour0054.z, 4.54545438E-01); _TMP6 = vec3(_TMP10, _TMP11, _TMP12); _texel20105 = vec4(_TMP6.x, _TMP6.y, _TMP6.z, 0.00000000E+00); _TMP390105 = _surf_specular2/2.00000000E+00; _texel30105 = vec4(_TMP390105.x, _TMP390105.y, _TMP390105.z, _gloss0105); _pixel01 = _texel00105; _pixel11 = _texel10105; _pixel21 = _texel20105; _pixel31 = _texel30105; gl_FragData[3] = _texel30105; gl_FragData[1] = _texel10105; gl_FragData[2] = _texel20105; gl_FragData[0] = _texel00105; } // main end  Cleaned Cg output for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F: #extension GL_ARB_draw_buffers : enable #extension GL_EXT_gpu_shader4 : enable vec4 _pixel01; vec4 _pixel21; vec4 _pixel11; vec4 _pixel31; vec3 _TMP6; float _TMP12; float _TMP11; float _TMP10; vec3 _TMP5; float _face3; float _TMP3; float _TMP8; float _TMP1; float _TMP0; uniform sampler2D _stipple_map2; uniform sampler2D _diffuse_map02; uniform vec2 _uv_animation02; uniform vec2 _uv_scale02; uniform vec4 _surf_diffuse2; uniform vec3 _surf_specular2; uniform float _surf_gloss2; uniform float _shadow_oblique_cutoff2; uniform vec4 _custom_param1; uniform float _alpha_rej2; uniform vec4 _time2; uniform float _render_target_flipping3; uniform float _far_clip_distance1; vec2 _uv0054[1]; vec2 _uv_ddx0054[1]; vec2 _uv_ddy0054[1]; float _highest10054; float _max_contribution0054[1]; float _total10054; float _pixel_alpha0054; vec4 _diff_txl0054[1]; float _contribution0054[1]; float _total20054; vec3 _normal_ws0054; vec3 _diff_colour0054; int _x10054; int _y10054; float _b0062; vec4 _TMP65; float _val0078; vec3 _TMP79; vec3 _TMP89; float _v0100; vec2 _uv0100; vec4 _TMP101; vec2 _uv0102; vec3 _normal_ws0105; float _gloss0105; vec4 _texel00105; vec4 _texel10105; vec4 _texel20105; vec4 _texel30105; vec3 _TMP390105; float _v0107; vec3 _r0107; float _x0109; float _x0111; // main procedure, the original name was fp_main void main() { vec3 _normal_ws2; vec2 _uv0_; float _cam_dist1; _face3 = float(gl_FrontFacing); _TMP0 = dot(gl_TexCoord[0].xyz, gl_TexCoord[0].xyz); _TMP1 = inversesqrt(_TMP0); _normal_ws2 = _TMP1*gl_TexCoord[0].xyz; _uv0_ = vec2(gl_TexCoord[2].w, gl_TexCoord[3].w); _uv0054[0] = _uv0_*_uv_scale02; _uv0054[0] = _uv0054[0] + _time2.x*_uv_animation02; _uv_ddx0054[0] = dFdx(_uv0054[0]); _uv_ddy0054[0] = dFdy(_uv0054[0]); _highest10054 = max(0.00000000E+00, 1.00000000E+00); _b0062 = _highest10054 + (1.49804688E+00 - _highest10054); _max_contribution0054[0] = max(0.00000000E+00, _b0062); _total10054 = 1.00000000E+00/_max_contribution0054[0]; _max_contribution0054[0] = _max_contribution0054[0]*_total10054; _pixel_alpha0054 = gl_Color.w*_surf_diffuse2.w; if (false || _max_contribution0054[0] > 0.00000000E+00) { // if begin _TMP65 = texture2DGrad(_diffuse_map02, _uv0054[0], _uv_ddx0054[0], _uv_ddy0054[0]); _diff_txl0054[0] = _TMP65; } else { _diff_txl0054[0] = vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if _pixel_alpha0054 = _pixel_alpha0054*_diff_txl0054[0].w; if (_pixel_alpha0054 <= _alpha_rej2) { // if begin discard; } // end if _contribution0054[0] = max(0.00000000E+00, 1.00000000E+00); _total20054 = 1.00000000E+00/_contribution0054[0]; _contribution0054[0] = _contribution0054[0]*_total20054; if (_contribution0054[0] > 0.00000000E+00) { // if begin _diff_txl0054[0].xyz = _diff_txl0054[0].xyz*vec3(_contribution0054[0], _contribution0054[0], _contribution0054[0]); } else { _diff_txl0054[0].xyz = vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if _val0078 = float((_face3 > 0.00000000E+00)); _TMP8 = _val0078 - float((_face3 < 0.00000000E+00)); _TMP3 = --_render_target_flipping3*_TMP8; _normal_ws0054 = _normal_ws2*vec3(_TMP3, _TMP3, _TMP3); _TMP10 = pow(_diff_txl0054[0].x, 2.20000005E+00); _TMP11 = pow(_diff_txl0054[0].y, 2.20000005E+00); _TMP12 = pow(_diff_txl0054[0].z, 2.20000005E+00); _TMP79 = vec3(_TMP10, _TMP11, _TMP12); _TMP10 = pow(gl_Color.x, 2.20000005E+00); _TMP11 = pow(gl_Color.y, 2.20000005E+00); _TMP12 = pow(gl_Color.z, 2.20000005E+00); _TMP89 = vec3(_TMP10, _TMP11, _TMP12); _diff_colour0054 = _surf_diffuse2.xyz*_TMP79*_TMP89; if (_custom_param1.x < 1.00000000E+00) { // if begin _x10054 = int(gl_FragCoord.x)%8; _y10054 = int(gl_FragCoord.y)%8; _v0100 = _custom_param1.x*1.60000000E+01; _uv0100 = vec2(float(_x10054), float(_y10054)); _uv0100.x = _uv0100.x + float((8.00000000E+00*float((int(_v0100)%4)))); _uv0100.y = _uv0100.y + float((8.00000000E+00*float(int((_v0100/4.00000000E+00))))); _uv0102 = _uv0100/3.20000000E+01; _TMP101 = texture2DGrad(_stipple_map2, _uv0102, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP101.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _cam_dist1 = gl_TexCoord[1].w/_far_clip_distance1; _normal_ws0105 = _normal_ws0054*vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 1.96078443E-03, 1.96078443E-03, 1.96078443E-03); _gloss0105 = _surf_gloss2/5.00000000E+01; _v0107 = _cam_dist1*1.67772150E+07; _x0109 = (_v0107/2.56000000E+02)/2.56000000E+02; _r0107.x = floor(_x0109); _x0111 = (_v0107 - _r0107.x*2.56000000E+02*2.56000000E+02)/2.56000000E+02; _r0107.y = floor(_x0111); _r0107.z = (_v0107 - _r0107.x*2.56000000E+02*2.56000000E+02) - _r0107.y*2.56000000E+02; _TMP5 = _r0107/2.55000000E+02; _texel00105 = vec4(_TMP5.x, _TMP5.y, _TMP5.z, _shadow_oblique_cutoff2); _texel10105 = vec4(_normal_ws0105.x, _normal_ws0105.y, _normal_ws0105.z, 0.00000000E+00); _TMP10 = pow(_diff_colour0054.x, 4.54545438E-01); _TMP11 = pow(_diff_colour0054.y, 4.54545438E-01); _TMP12 = pow(_diff_colour0054.z, 4.54545438E-01); _TMP6 = vec3(_TMP10, _TMP11, _TMP12); _texel20105 = vec4(_TMP6.x, _TMP6.y, _TMP6.z, 0.00000000E+00); _TMP390105 = _surf_specular2/2.00000000E+00; _texel30105 = vec4(_TMP390105.x, _TMP390105.y, _TMP390105.z, _gloss0105); _pixel01 = _texel00105; _pixel11 = _texel10105; _pixel21 = _texel20105; _pixel31 = _texel30105; gl_FragData[3] = _texel30105; gl_FragData[1] = _texel10105; gl_FragData[2] = _texel20105; gl_FragData[0] = _texel00105; } // main end  Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej2 with alpha_rej replaced _alpha_rej2[0] with alpha_rej[0] replaced _custom_param1 with custom_param replaced _custom_param1[0] with custom_param[0] replaced _diffuse_map02 with diffuse_map0 replaced _diffuse_map02[0] with diffuse_map0[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _render_target_flipping3 with render_target_flipping replaced _render_target_flipping3[0] with render_target_flipping[0] replaced _shadow_oblique_cutoff2 with shadow_oblique_cutoff replaced _shadow_oblique_cutoff2[0] with shadow_oblique_cutoff[0] replaced _stipple_map2 with stipple_map replaced _stipple_map2[0] with stipple_map[0] replaced _surf_diffuse2 with surf_diffuse replaced _surf_diffuse2[0] with surf_diffuse[0] replaced _surf_gloss2 with surf_gloss replaced _surf_gloss2[0] with surf_gloss[0] replaced _surf_specular2 with surf_specular replaced _surf_specular2[0] with surf_specular[0] replaced _time2 with time replaced _time2[0] with time[0] replaced _uv_animation02 with uv_animation0 replaced _uv_animation02[0] with uv_animation0[0] replaced _uv_scale02 with uv_scale0 replaced _uv_scale02[0] with uv_scale0[0] Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Requested GpuProgramParameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Compiling shader: recv_v:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F 0 Cg output for recv_v:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=1 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=0 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=1 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3),uniform sampler2D diffuse_map0 : register(s4), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, sampler2D diffuse_map0, -DEXTRA_MAP_ARGS=stipple_map, diffuse_map0, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS=diffuse_map0, -DNORMAL_MAPS= -DSPEC_MAPS= -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.bone_matrixes //semantic vp_main.world //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.camera_pos_ws //var float4x4 view : : _view1[0], 4 : 6 : 1 //var float4x4 proj : : _proj1[0], 4 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float3 normal_os : $vin.NORMAL : ATTR2 : 1 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 2 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 3 : 1 //var float4 out00 : $vout.TEXCOORD0 : TEX0 : 9 : 1 //var float4 out01 : $vout.TEXCOORD1 : TEX1 : 10 : 1 //var float4 out02 : $vout.TEXCOORD2 : TEX2 : 11 : 1 //var float4 out03 : $vout.TEXCOORD3 : TEX3 : 12 : 1 //var float4 out04 : $vout.TEXCOORD4 : TEX4 : 13 : 1 //var float4 out05 : $vout.TEXCOORD5 : TEX5 : 14 : 1 //var float4 out06 : $vout.TEXCOORD6 : TEX6 : 15 : 1 //var float4 out07 : $vout.TEXCOORD7 : TEX7 : 16 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 17 : 1 //var float4 vert_colour : $vout.COLOR0 : COL0 : 18 : 1 vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; vec4 _r0013; vec4 _v0013; vec4 _r0023; vec4 _v0023; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0013 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0013.x = dot(_view1[0], _v0013); _r0013.y = dot(_view1[1], _v0013); _r0013.z = dot(_view1[2], _v0013); _v0023 = vec4(_r0013.x, _r0013.y, _r0013.z, 1.00000000E+00); _r0023.x = dot(_proj1[0], _v0023); _r0023.y = dot(_proj1[1], _v0023); _r0023.z = dot(_proj1[2], _v0023); _r0023.w = dot(_proj1[3], _v0023); _for_rasteriser1 = _r0023; _out001.xyz = gl_Normal; _out011.w = -_r0013.z; _out021.w = gl_MultiTexCoord0.x; _out031.w = gl_MultiTexCoord0.y; _out041.y = 0.00000000E+00; _out041.z = 0.00000000E+00; _out041.w = gl_MultiTexCoord1.x; gl_TexCoord[4] = _out041; gl_TexCoord[7] = _out071; gl_TexCoord[2] = _out021; gl_TexCoord[5] = _out051; gl_TexCoord[0] = _out001; gl_TexCoord[3] = _out031; gl_TexCoord[6] = _out061; gl_TexCoord[1] = _out011; gl_FrontColor = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); gl_Position = _r0023; } // main end  Cleaned Cg output for recv_v:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F: vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform mat4 _view1; uniform mat4 _proj1; vec4 _r0013; vec4 _v0013; vec4 _r0023; vec4 _v0023; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0013 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0013.x = dot(_view1[0], _v0013); _r0013.y = dot(_view1[1], _v0013); _r0013.z = dot(_view1[2], _v0013); _v0023 = vec4(_r0013.x, _r0013.y, _r0013.z, 1.00000000E+00); _r0023.x = dot(_proj1[0], _v0023); _r0023.y = dot(_proj1[1], _v0023); _r0023.z = dot(_proj1[2], _v0023); _r0023.w = dot(_proj1[3], _v0023); _for_rasteriser1 = _r0023; _out001.xyz = gl_Normal; _out011.w = -_r0013.z; _out021.w = gl_MultiTexCoord0.x; _out031.w = gl_MultiTexCoord0.y; _out041.y = 0.00000000E+00; _out041.z = 0.00000000E+00; _out041.w = gl_MultiTexCoord1.x; gl_TexCoord[4] = _out041; gl_TexCoord[7] = _out071; gl_TexCoord[2] = _out021; gl_TexCoord[5] = _out051; gl_TexCoord[0] = _out001; gl_TexCoord[3] = _out031; gl_TexCoord[6] = _out061; gl_TexCoord[1] = _out011; gl_FrontColor = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); gl_Position = _r0023; } // main end  Getting default parameters for recv_v:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Replacing parameters... Replacing parameter names. replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _view1 with view replaced _view1[0] with view[0] Getting default parameters for recv_v:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Cg output for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=1 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=0 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=1 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3),uniform sampler2D diffuse_map0 : register(s4), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, sampler2D diffuse_map0, -DEXTRA_MAP_ARGS=stipple_map, diffuse_map0, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS=diffuse_map0, -DNORMAL_MAPS= -DSPEC_MAPS= -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.stipple_map : TEXUNIT3 //semantic fp_main.diffuse_map0 : TEXUNIT4 //semantic fp_main.spec_diff_brightness0 //semantic fp_main.spec_diff_contrast0 //semantic fp_main.uv_animation0 //semantic fp_main.uv_scale0 //semantic fp_main.uv0 //semantic fp_main.surf_diffuse //semantic fp_main.surf_specular //semantic fp_main.surf_gloss //semantic fp_main.shadow_oblique_cutoff //semantic fp_main.custom_param //semantic fp_main.alpha_rej //semantic fp_main.time //semantic fp_main.texture_size //semantic fp_main.col1 //semantic fp_main.col2 //semantic fp_main.col3 //semantic fp_main.col4 //semantic fp_main.col_spec1 //semantic fp_main.col_spec2 //semantic fp_main.col_spec3 //semantic fp_main.col_spec4 //semantic fp_main.microflakes_mask //semantic fp_main.render_target_flipping //semantic fp_main.far_clip_distance //var sampler2D stipple_map : TEXUNIT3 : _stipple_map2 3 : 11 : 1 //var sampler2D diffuse_map0 : TEXUNIT4 : _diffuse_map02 4 : 12 : 1 //var float2 uv_animation0 : : _uv_animation02 : 15 : 1 //var float2 uv_scale0 : : _uv_scale02 : 16 : 1 //var float4 surf_diffuse : : _surf_diffuse2 : 18 : 1 //var float3 surf_specular : : _surf_specular2 : 19 : 1 //var float surf_gloss : : _surf_gloss2 : 20 : 1 //var float shadow_oblique_cutoff : : _shadow_oblique_cutoff2 : 21 : 1 //var float alpha_rej : : _alpha_rej2 : 23 : 1 //var float4 time : : _time2 : 24 : 1 //var float render_target_flipping : : _render_target_flipping3 : 35 : 1 //var float far_clip_distance : : _far_clip_distance1 : 36 : 1 //var float4 vert_colour : $vin.COLOR0 : COL0 : 0 : 1 //var float face : $vin.FACE : FACE : 1 : 1 //var float4 out00 : $vin.TEXCOORD0 : TEX0 : 2 : 1 //var float4 out01 : $vin.TEXCOORD1 : TEX1 : 3 : 1 //var float4 out02 : $vin.TEXCOORD2 : TEX2 : 4 : 1 //var float4 out03 : $vin.TEXCOORD3 : TEX3 : 5 : 1 //var float4 out04 : $vin.TEXCOORD4 : TEX4 : 6 : 1 //var float4 out05 : $vin.TEXCOORD5 : : 7 : 0 //var float4 out06 : $vin.TEXCOORD6 : : 8 : 0 //var float4 out07 : $vin.TEXCOORD7 : : 9 : 0 //var float2 wpos : $vin.WPOS : WPOS : 10 : 1 //var float4 pixel0 : $vout.COLOR0 : COL : 37 : 1 //var float4 pixel1 : $vout.COLOR1 : COL1 : 38 : 1 //var float4 pixel2 : $vout.COLOR2 : COL2 : 39 : 1 //var float4 pixel3 : $vout.COLOR3 : COL3 : 40 : 1 #extension GL_ARB_draw_buffers : enable #extension GL_EXT_gpu_shader4 : enable vec4 _pixel01; vec4 _pixel21; vec4 _pixel11; vec4 _pixel31; vec3 _TMP6; float _TMP12; float _TMP11; float _TMP10; vec3 _TMP5; float _face3; float _TMP3; float _TMP8; float _TMP1; float _TMP0; uniform sampler2D _stipple_map2; uniform sampler2D _diffuse_map02; uniform vec2 _uv_animation02; uniform vec2 _uv_scale02; uniform vec4 _surf_diffuse2; uniform vec3 _surf_specular2; uniform float _surf_gloss2; uniform float _shadow_oblique_cutoff2; uniform float _alpha_rej2; uniform vec4 _time2; uniform float _render_target_flipping3; uniform float _far_clip_distance1; vec2 _uv0054[1]; vec2 _uv_ddx0054[1]; vec2 _uv_ddy0054[1]; float _highest10054; float _max_contribution0054[1]; float _total10054; float _pixel_alpha0054; vec4 _diff_txl0054[1]; float _contribution0054[1]; float _total20054; vec3 _normal_ws0054; vec3 _diff_colour0054; float _v0054; int _x10054; int _y10054; float _b0062; vec4 _TMP65; float _val0078; vec3 _TMP79; vec3 _TMP89; float _v0100; vec2 _uv0100; vec4 _TMP101; vec2 _uv0102; vec3 _normal_ws0105; float _gloss0105; vec4 _texel00105; vec4 _texel10105; vec4 _texel20105; vec4 _texel30105; vec3 _TMP390105; float _v0107; vec3 _r0107; float _x0109; float _x0111; // main procedure, the original name was fp_main void main() { vec3 _normal_ws2; vec2 _uv0_; float _cam_dist1; _face3 = float(gl_FrontFacing); _TMP0 = dot(gl_TexCoord[0].xyz, gl_TexCoord[0].xyz); _TMP1 = inversesqrt(_TMP0); _normal_ws2 = _TMP1*gl_TexCoord[0].xyz; _uv0_ = vec2(gl_TexCoord[2].w, gl_TexCoord[3].w); _uv0054[0] = _uv0_*_uv_scale02; _uv0054[0] = _uv0054[0] + _time2.x*_uv_animation02; _uv_ddx0054[0] = dFdx(_uv0054[0]); _uv_ddy0054[0] = dFdy(_uv0054[0]); _highest10054 = max(0.00000000E+00, 1.00000000E+00); _b0062 = _highest10054 + (1.49804688E+00 - _highest10054); _max_contribution0054[0] = max(0.00000000E+00, _b0062); _total10054 = 1.00000000E+00/_max_contribution0054[0]; _max_contribution0054[0] = _max_contribution0054[0]*_total10054; _pixel_alpha0054 = gl_Color.w*_surf_diffuse2.w; if (false || _max_contribution0054[0] > 0.00000000E+00) { // if begin _TMP65 = texture2DGrad(_diffuse_map02, _uv0054[0], _uv_ddx0054[0], _uv_ddy0054[0]); _diff_txl0054[0] = _TMP65; } else { _diff_txl0054[0] = vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if _pixel_alpha0054 = _pixel_alpha0054*_diff_txl0054[0].w; if (_pixel_alpha0054 <= _alpha_rej2) { // if begin discard; } // end if _contribution0054[0] = max(0.00000000E+00, 1.00000000E+00); _total20054 = 1.00000000E+00/_contribution0054[0]; _contribution0054[0] = _contribution0054[0]*_total20054; if (_contribution0054[0] > 0.00000000E+00) { // if begin _diff_txl0054[0].xyz = _diff_txl0054[0].xyz*vec3(_contribution0054[0], _contribution0054[0], _contribution0054[0]); } else { _diff_txl0054[0].xyz = vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if _val0078 = float((_face3 > 0.00000000E+00)); _TMP8 = _val0078 - float((_face3 < 0.00000000E+00)); _TMP3 = --_render_target_flipping3*_TMP8; _normal_ws0054 = _normal_ws2*vec3(_TMP3, _TMP3, _TMP3); _TMP10 = pow(_diff_txl0054[0].x, 2.20000005E+00); _TMP11 = pow(_diff_txl0054[0].y, 2.20000005E+00); _TMP12 = pow(_diff_txl0054[0].z, 2.20000005E+00); _TMP79 = vec3(_TMP10, _TMP11, _TMP12); _TMP10 = pow(gl_Color.x, 2.20000005E+00); _TMP11 = pow(gl_Color.y, 2.20000005E+00); _TMP12 = pow(gl_Color.z, 2.20000005E+00); _TMP89 = vec3(_TMP10, _TMP11, _TMP12); _diff_colour0054 = _surf_diffuse2.xyz*_TMP79*_TMP89; _v0054 = gl_TexCoord[4].w + 1.95312500E-03; if (_v0054 < 1.00000000E+00) { // if begin _x10054 = int(gl_FragCoord.x)%8; _y10054 = int(gl_FragCoord.y)%8; _v0100 = _v0054*1.60000000E+01; _uv0100 = vec2(float(_x10054), float(_y10054)); _uv0100.x = _uv0100.x + float((8.00000000E+00*float((int(_v0100)%4)))); _uv0100.y = _uv0100.y + float((8.00000000E+00*float(int((_v0100/4.00000000E+00))))); _uv0102 = _uv0100/3.20000000E+01; _TMP101 = texture2DGrad(_stipple_map2, _uv0102, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP101.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _cam_dist1 = gl_TexCoord[1].w/_far_clip_distance1; _normal_ws0105 = _normal_ws0054*vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 1.96078443E-03, 1.96078443E-03, 1.96078443E-03); _gloss0105 = _surf_gloss2/5.00000000E+01; _v0107 = _cam_dist1*1.67772150E+07; _x0109 = (_v0107/2.56000000E+02)/2.56000000E+02; _r0107.x = floor(_x0109); _x0111 = (_v0107 - _r0107.x*2.56000000E+02*2.56000000E+02)/2.56000000E+02; _r0107.y = floor(_x0111); _r0107.z = (_v0107 - _r0107.x*2.56000000E+02*2.56000000E+02) - _r0107.y*2.56000000E+02; _TMP5 = _r0107/2.55000000E+02; _texel00105 = vec4(_TMP5.x, _TMP5.y, _TMP5.z, _shadow_oblique_cutoff2); _texel10105 = vec4(_normal_ws0105.x, _normal_ws0105.y, _normal_ws0105.z, 0.00000000E+00); _TMP10 = pow(_diff_colour0054.x, 4.54545438E-01); _TMP11 = pow(_diff_colour0054.y, 4.54545438E-01); _TMP12 = pow(_diff_colour0054.z, 4.54545438E-01); _TMP6 = vec3(_TMP10, _TMP11, _TMP12); _texel20105 = vec4(_TMP6.x, _TMP6.y, _TMP6.z, 0.00000000E+00); _TMP390105 = _surf_specular2/2.00000000E+00; _texel30105 = vec4(_TMP390105.x, _TMP390105.y, _TMP390105.z, _gloss0105); _pixel01 = _texel00105; _pixel11 = _texel10105; _pixel21 = _texel20105; _pixel31 = _texel30105; gl_FragData[3] = _texel30105; gl_FragData[1] = _texel10105; gl_FragData[2] = _texel20105; gl_FragData[0] = _texel00105; } // main end  Cleaned Cg output for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F: #extension GL_ARB_draw_buffers : enable #extension GL_EXT_gpu_shader4 : enable vec4 _pixel01; vec4 _pixel21; vec4 _pixel11; vec4 _pixel31; vec3 _TMP6; float _TMP12; float _TMP11; float _TMP10; vec3 _TMP5; float _face3; float _TMP3; float _TMP8; float _TMP1; float _TMP0; uniform sampler2D _stipple_map2; uniform sampler2D _diffuse_map02; uniform vec2 _uv_animation02; uniform vec2 _uv_scale02; uniform vec4 _surf_diffuse2; uniform vec3 _surf_specular2; uniform float _surf_gloss2; uniform float _shadow_oblique_cutoff2; uniform float _alpha_rej2; uniform vec4 _time2; uniform float _render_target_flipping3; uniform float _far_clip_distance1; vec2 _uv0054[1]; vec2 _uv_ddx0054[1]; vec2 _uv_ddy0054[1]; float _highest10054; float _max_contribution0054[1]; float _total10054; float _pixel_alpha0054; vec4 _diff_txl0054[1]; float _contribution0054[1]; float _total20054; vec3 _normal_ws0054; vec3 _diff_colour0054; float _v0054; int _x10054; int _y10054; float _b0062; vec4 _TMP65; float _val0078; vec3 _TMP79; vec3 _TMP89; float _v0100; vec2 _uv0100; vec4 _TMP101; vec2 _uv0102; vec3 _normal_ws0105; float _gloss0105; vec4 _texel00105; vec4 _texel10105; vec4 _texel20105; vec4 _texel30105; vec3 _TMP390105; float _v0107; vec3 _r0107; float _x0109; float _x0111; // main procedure, the original name was fp_main void main() { vec3 _normal_ws2; vec2 _uv0_; float _cam_dist1; _face3 = float(gl_FrontFacing); _TMP0 = dot(gl_TexCoord[0].xyz, gl_TexCoord[0].xyz); _TMP1 = inversesqrt(_TMP0); _normal_ws2 = _TMP1*gl_TexCoord[0].xyz; _uv0_ = vec2(gl_TexCoord[2].w, gl_TexCoord[3].w); _uv0054[0] = _uv0_*_uv_scale02; _uv0054[0] = _uv0054[0] + _time2.x*_uv_animation02; _uv_ddx0054[0] = dFdx(_uv0054[0]); _uv_ddy0054[0] = dFdy(_uv0054[0]); _highest10054 = max(0.00000000E+00, 1.00000000E+00); _b0062 = _highest10054 + (1.49804688E+00 - _highest10054); _max_contribution0054[0] = max(0.00000000E+00, _b0062); _total10054 = 1.00000000E+00/_max_contribution0054[0]; _max_contribution0054[0] = _max_contribution0054[0]*_total10054; _pixel_alpha0054 = gl_Color.w*_surf_diffuse2.w; if (false || _max_contribution0054[0] > 0.00000000E+00) { // if begin _TMP65 = texture2DGrad(_diffuse_map02, _uv0054[0], _uv_ddx0054[0], _uv_ddy0054[0]); _diff_txl0054[0] = _TMP65; } else { _diff_txl0054[0] = vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if _pixel_alpha0054 = _pixel_alpha0054*_diff_txl0054[0].w; if (_pixel_alpha0054 <= _alpha_rej2) { // if begin discard; } // end if _contribution0054[0] = max(0.00000000E+00, 1.00000000E+00); _total20054 = 1.00000000E+00/_contribution0054[0]; _contribution0054[0] = _contribution0054[0]*_total20054; if (_contribution0054[0] > 0.00000000E+00) { // if begin _diff_txl0054[0].xyz = _diff_txl0054[0].xyz*vec3(_contribution0054[0], _contribution0054[0], _contribution0054[0]); } else { _diff_txl0054[0].xyz = vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if _val0078 = float((_face3 > 0.00000000E+00)); _TMP8 = _val0078 - float((_face3 < 0.00000000E+00)); _TMP3 = --_render_target_flipping3*_TMP8; _normal_ws0054 = _normal_ws2*vec3(_TMP3, _TMP3, _TMP3); _TMP10 = pow(_diff_txl0054[0].x, 2.20000005E+00); _TMP11 = pow(_diff_txl0054[0].y, 2.20000005E+00); _TMP12 = pow(_diff_txl0054[0].z, 2.20000005E+00); _TMP79 = vec3(_TMP10, _TMP11, _TMP12); _TMP10 = pow(gl_Color.x, 2.20000005E+00); _TMP11 = pow(gl_Color.y, 2.20000005E+00); _TMP12 = pow(gl_Color.z, 2.20000005E+00); _TMP89 = vec3(_TMP10, _TMP11, _TMP12); _diff_colour0054 = _surf_diffuse2.xyz*_TMP79*_TMP89; _v0054 = gl_TexCoord[4].w + 1.95312500E-03; if (_v0054 < 1.00000000E+00) { // if begin _x10054 = int(gl_FragCoord.x)%8; _y10054 = int(gl_FragCoord.y)%8; _v0100 = _v0054*1.60000000E+01; _uv0100 = vec2(float(_x10054), float(_y10054)); _uv0100.x = _uv0100.x + float((8.00000000E+00*float((int(_v0100)%4)))); _uv0100.y = _uv0100.y + float((8.00000000E+00*float(int((_v0100/4.00000000E+00))))); _uv0102 = _uv0100/3.20000000E+01; _TMP101 = texture2DGrad(_stipple_map2, _uv0102, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP101.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _cam_dist1 = gl_TexCoord[1].w/_far_clip_distance1; _normal_ws0105 = _normal_ws0054*vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 1.96078443E-03, 1.96078443E-03, 1.96078443E-03); _gloss0105 = _surf_gloss2/5.00000000E+01; _v0107 = _cam_dist1*1.67772150E+07; _x0109 = (_v0107/2.56000000E+02)/2.56000000E+02; _r0107.x = floor(_x0109); _x0111 = (_v0107 - _r0107.x*2.56000000E+02*2.56000000E+02)/2.56000000E+02; _r0107.y = floor(_x0111); _r0107.z = (_v0107 - _r0107.x*2.56000000E+02*2.56000000E+02) - _r0107.y*2.56000000E+02; _TMP5 = _r0107/2.55000000E+02; _texel00105 = vec4(_TMP5.x, _TMP5.y, _TMP5.z, _shadow_oblique_cutoff2); _texel10105 = vec4(_normal_ws0105.x, _normal_ws0105.y, _normal_ws0105.z, 0.00000000E+00); _TMP10 = pow(_diff_colour0054.x, 4.54545438E-01); _TMP11 = pow(_diff_colour0054.y, 4.54545438E-01); _TMP12 = pow(_diff_colour0054.z, 4.54545438E-01); _TMP6 = vec3(_TMP10, _TMP11, _TMP12); _texel20105 = vec4(_TMP6.x, _TMP6.y, _TMP6.z, 0.00000000E+00); _TMP390105 = _surf_specular2/2.00000000E+00; _texel30105 = vec4(_TMP390105.x, _TMP390105.y, _TMP390105.z, _gloss0105); _pixel01 = _texel00105; _pixel11 = _texel10105; _pixel21 = _texel20105; _pixel31 = _texel30105; gl_FragData[3] = _texel30105; gl_FragData[1] = _texel10105; gl_FragData[2] = _texel20105; gl_FragData[0] = _texel00105; } // main end  Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej2 with alpha_rej replaced _alpha_rej2[0] with alpha_rej[0] replaced _diffuse_map02 with diffuse_map0 replaced _diffuse_map02[0] with diffuse_map0[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _render_target_flipping3 with render_target_flipping replaced _render_target_flipping3[0] with render_target_flipping[0] replaced _shadow_oblique_cutoff2 with shadow_oblique_cutoff replaced _shadow_oblique_cutoff2[0] with shadow_oblique_cutoff[0] replaced _stipple_map2 with stipple_map replaced _stipple_map2[0] with stipple_map[0] replaced _surf_diffuse2 with surf_diffuse replaced _surf_diffuse2[0] with surf_diffuse[0] replaced _surf_gloss2 with surf_gloss replaced _surf_gloss2[0] with surf_gloss[0] replaced _surf_specular2 with surf_specular replaced _surf_specular2[0] with surf_specular[0] replaced _time2 with time replaced _time2[0] with time[0] replaced _uv_animation02 with uv_animation0 replaced _uv_animation02[0] with uv_animation0[0] replaced _uv_scale02 with uv_scale0 replaced _uv_scale02[0] with uv_scale0[0] Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Requested GpuProgramParameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Compiling shader: recv_v:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F 0 Cg output for recv_v:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=1 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=1 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=0 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3),uniform sampler2D diffuse_map0 : register(s4),uniform sampler2D normal_map0 : register(s5), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, sampler2D diffuse_map0, sampler2D normal_map0, -DEXTRA_MAP_ARGS=stipple_map, diffuse_map0, normal_map0, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS=diffuse_map0, -DNORMAL_MAPS=normal_map0, -DSPEC_MAPS= -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.bone_matrixes //semantic vp_main.world //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.camera_pos_ws //var float4x4 world : : _world2[0], 4 : 5 : 1 //var float4x4 view : : _view1[0], 4 : 6 : 1 //var float4x4 proj : : _proj1[0], 4 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float3 normal_os : $vin.NORMAL : ATTR2 : 1 : 1 //var float4 tangent_with_parity : $vin.TANGENT : $TANGENT : 2 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 3 : 1 //var float4 out00 : $vout.TEXCOORD0 : TEX0 : 9 : 1 //var float4 out01 : $vout.TEXCOORD1 : TEX1 : 10 : 1 //var float4 out02 : $vout.TEXCOORD2 : TEX2 : 11 : 1 //var float4 out03 : $vout.TEXCOORD3 : TEX3 : 12 : 1 //var float4 out04 : $vout.TEXCOORD4 : TEX4 : 13 : 1 //var float4 out05 : $vout.TEXCOORD5 : TEX5 : 14 : 1 //var float4 out06 : $vout.TEXCOORD6 : TEX6 : 15 : 1 //var float4 out07 : $vout.TEXCOORD7 : TEX7 : 16 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 17 : 1 //var float4 vert_colour : $vout.COLOR0 : COL0 : 18 : 1 vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform vec4 _world2[4]; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; vec4 _r0017; vec4 _v0017; vec4 _r0027; vec4 _v0027; vec4 _r0037; vec4 _v0037; vec4 _r0049; vec4 _v0049; vec4 _r0059; vec4 _v0059; attribute vec4 TANGENT; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0017 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0017.x = dot(_world2[0], _v0017); _r0017.y = dot(_world2[1], _v0017); _r0017.z = dot(_world2[2], _v0017); _v0027 = vec4(gl_Normal.x, gl_Normal.y, gl_Normal.z, 0.00000000E+00); _r0027.x = dot(_world2[0], _v0027); _r0027.y = dot(_world2[1], _v0027); _r0027.z = dot(_world2[2], _v0027); _v0037 = vec4(TANGENT.x, TANGENT.y, TANGENT.z, 0.00000000E+00); _r0037.x = dot(_world2[0], _v0037); _r0037.y = dot(_world2[1], _v0037); _r0037.z = dot(_world2[2], _v0037); _v0049 = vec4(_r0017.x, _r0017.y, _r0017.z, 1.00000000E+00); _r0049.x = dot(_view1[0], _v0049); _r0049.y = dot(_view1[1], _v0049); _r0049.z = dot(_view1[2], _v0049); _v0059 = vec4(_r0049.x, _r0049.y, _r0049.z, 1.00000000E+00); _r0059.x = dot(_proj1[0], _v0059); _r0059.y = dot(_proj1[1], _v0059); _r0059.z = dot(_proj1[2], _v0059); _r0059.w = dot(_proj1[3], _v0059); _for_rasteriser1 = _r0059; _out001.xyz = _r0027.xyz; _out031.xyz = _r0037.xyz; _out041.x = TANGENT.w; _out011.w = -_r0049.z; _out021.w = gl_MultiTexCoord0.x; _out031.w = gl_MultiTexCoord0.y; _out041.y = 0.00000000E+00; _out041.z = 0.00000000E+00; gl_TexCoord[4] = _out041; gl_TexCoord[7] = _out071; gl_TexCoord[2] = _out021; gl_TexCoord[5] = _out051; gl_TexCoord[0] = _out001; gl_TexCoord[3] = _out031; gl_TexCoord[6] = _out061; gl_TexCoord[1] = _out011; gl_FrontColor = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); gl_Position = _r0059; } // main end  Cleaned Cg output for recv_v:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F: vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform mat4 _world2; uniform mat4 _view1; uniform mat4 _proj1; vec4 _r0017; vec4 _v0017; vec4 _r0027; vec4 _v0027; vec4 _r0037; vec4 _v0037; vec4 _r0049; vec4 _v0049; vec4 _r0059; vec4 _v0059; attribute vec4 TANGENT; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0017 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0017.x = dot(_world2[0], _v0017); _r0017.y = dot(_world2[1], _v0017); _r0017.z = dot(_world2[2], _v0017); _v0027 = vec4(gl_Normal.x, gl_Normal.y, gl_Normal.z, 0.00000000E+00); _r0027.x = dot(_world2[0], _v0027); _r0027.y = dot(_world2[1], _v0027); _r0027.z = dot(_world2[2], _v0027); _v0037 = vec4(TANGENT.x, TANGENT.y, TANGENT.z, 0.00000000E+00); _r0037.x = dot(_world2[0], _v0037); _r0037.y = dot(_world2[1], _v0037); _r0037.z = dot(_world2[2], _v0037); _v0049 = vec4(_r0017.x, _r0017.y, _r0017.z, 1.00000000E+00); _r0049.x = dot(_view1[0], _v0049); _r0049.y = dot(_view1[1], _v0049); _r0049.z = dot(_view1[2], _v0049); _v0059 = vec4(_r0049.x, _r0049.y, _r0049.z, 1.00000000E+00); _r0059.x = dot(_proj1[0], _v0059); _r0059.y = dot(_proj1[1], _v0059); _r0059.z = dot(_proj1[2], _v0059); _r0059.w = dot(_proj1[3], _v0059); _for_rasteriser1 = _r0059; _out001.xyz = _r0027.xyz; _out031.xyz = _r0037.xyz; _out041.x = TANGENT.w; _out011.w = -_r0049.z; _out021.w = gl_MultiTexCoord0.x; _out031.w = gl_MultiTexCoord0.y; _out041.y = 0.00000000E+00; _out041.z = 0.00000000E+00; gl_TexCoord[4] = _out041; gl_TexCoord[7] = _out071; gl_TexCoord[2] = _out021; gl_TexCoord[5] = _out051; gl_TexCoord[0] = _out001; gl_TexCoord[3] = _out031; gl_TexCoord[6] = _out061; gl_TexCoord[1] = _out011; gl_FrontColor = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); gl_Position = _r0059; } // main end  Getting default parameters for recv_v:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Replacing parameters... Replacing parameter names. replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _view1 with view replaced _view1[0] with view[0] replaced _world2 with world replaced _world2[0] with world[0] Getting default parameters for recv_v:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_v:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Cg output for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=1 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=1 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=0 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3),uniform sampler2D diffuse_map0 : register(s4),uniform sampler2D normal_map0 : register(s5), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, sampler2D diffuse_map0, sampler2D normal_map0, -DEXTRA_MAP_ARGS=stipple_map, diffuse_map0, normal_map0, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS=diffuse_map0, -DNORMAL_MAPS=normal_map0, -DSPEC_MAPS= -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.stipple_map : TEXUNIT3 //semantic fp_main.diffuse_map0 : TEXUNIT4 //semantic fp_main.normal_map0 : TEXUNIT5 //semantic fp_main.spec_diff_brightness0 //semantic fp_main.spec_diff_contrast0 //semantic fp_main.uv_animation0 //semantic fp_main.uv_scale0 //semantic fp_main.uv0 //semantic fp_main.surf_diffuse //semantic fp_main.surf_specular //semantic fp_main.surf_gloss //semantic fp_main.shadow_oblique_cutoff //semantic fp_main.custom_param //semantic fp_main.alpha_rej //semantic fp_main.time //semantic fp_main.texture_size //semantic fp_main.col1 //semantic fp_main.col2 //semantic fp_main.col3 //semantic fp_main.col4 //semantic fp_main.col_spec1 //semantic fp_main.col_spec2 //semantic fp_main.col_spec3 //semantic fp_main.col_spec4 //semantic fp_main.microflakes_mask //semantic fp_main.render_target_flipping //semantic fp_main.far_clip_distance //var sampler2D stipple_map : TEXUNIT3 : _stipple_map2 3 : 11 : 1 //var sampler2D diffuse_map0 : TEXUNIT4 : _diffuse_map02 4 : 12 : 1 //var sampler2D normal_map0 : TEXUNIT5 : _normal_map02 5 : 13 : 1 //var float2 uv_animation0 : : _uv_animation02 : 16 : 1 //var float2 uv_scale0 : : _uv_scale02 : 17 : 1 //var float4 surf_diffuse : : _surf_diffuse2 : 19 : 1 //var float3 surf_specular : : _surf_specular2 : 20 : 1 //var float surf_gloss : : _surf_gloss2 : 21 : 1 //var float shadow_oblique_cutoff : : _shadow_oblique_cutoff2 : 22 : 1 //var float4 custom_param : : _custom_param1 : 23 : 1 //var float alpha_rej : : _alpha_rej2 : 24 : 1 //var float4 time : : _time2 : 25 : 1 //var float render_target_flipping : : _render_target_flipping3 : 36 : 1 //var float far_clip_distance : : _far_clip_distance1 : 37 : 1 //var float4 vert_colour : $vin.COLOR0 : COL0 : 0 : 1 //var float face : $vin.FACE : FACE : 1 : 1 //var float4 out00 : $vin.TEXCOORD0 : TEX0 : 2 : 1 //var float4 out01 : $vin.TEXCOORD1 : TEX1 : 3 : 1 //var float4 out02 : $vin.TEXCOORD2 : TEX2 : 4 : 1 //var float4 out03 : $vin.TEXCOORD3 : TEX3 : 5 : 1 //var float4 out04 : $vin.TEXCOORD4 : TEX4 : 6 : 1 //var float4 out05 : $vin.TEXCOORD5 : : 7 : 0 //var float4 out06 : $vin.TEXCOORD6 : : 8 : 0 //var float4 out07 : $vin.TEXCOORD7 : : 9 : 0 //var float2 wpos : $vin.WPOS : WPOS : 10 : 1 //var float4 pixel0 : $vout.COLOR0 : COL : 38 : 1 //var float4 pixel1 : $vout.COLOR1 : COL1 : 39 : 1 //var float4 pixel2 : $vout.COLOR2 : COL2 : 40 : 1 //var float4 pixel3 : $vout.COLOR3 : COL3 : 41 : 1 #extension GL_ARB_draw_buffers : enable #extension GL_EXT_gpu_shader4 : enable vec4 _pixel01; vec4 _pixel21; vec4 _pixel11; vec4 _pixel31; vec3 _TMP9; float _TMP15; float _TMP14; float _TMP13; vec3 _TMP8; float _face3; vec3 _TMP6; float _TMP5; float _TMP11; float _TMP1; float _TMP0; uniform sampler2D _stipple_map2; uniform sampler2D _diffuse_map02; uniform sampler2D _normal_map02; uniform vec2 _uv_animation02; uniform vec2 _uv_scale02; uniform vec4 _surf_diffuse2; uniform vec3 _surf_specular2; uniform float _surf_gloss2; uniform float _shadow_oblique_cutoff2; uniform vec4 _custom_param1; uniform float _alpha_rej2; uniform vec4 _time2; uniform float _render_target_flipping3; uniform float _far_clip_distance1; vec2 _uv0065[1]; vec2 _uv_ddx0065[1]; vec2 _uv_ddy0065[1]; float _highest10065; float _max_contribution0065[1]; float _total10065; float _pixel_alpha0065; vec4 _diff_txl0065[1]; float _contribution0065[1]; float _total20065; vec3 _norm_txl10065[1]; vec3 _normal_ts0065; vec3 _normal_ws0065; vec3 _binormal_ws0065; vec3 _diff_colour0065; int _x10065; int _y10065; float _b0073; vec4 _TMP76; vec4 _TMP86; float _val0095; vec3 _TMP98; vec3 _TMP108; float _v0119; vec2 _uv0119; vec4 _TMP120; vec2 _uv0121; vec3 _normal_ws0124; float _gloss0124; vec4 _texel00124; vec4 _texel10124; vec4 _texel20124; vec4 _texel30124; vec3 _TMP430124; float _v0126; vec3 _r0126; float _x0128; float _x0130; // main procedure, the original name was fp_main void main() { vec3 _normal_ws2; vec3 _tangent_ws1; vec2 _uv0_; float _cam_dist1; _face3 = float(gl_FrontFacing); _TMP0 = dot(gl_TexCoord[0].xyz, gl_TexCoord[0].xyz); _TMP1 = inversesqrt(_TMP0); _normal_ws2 = _TMP1*gl_TexCoord[0].xyz; _TMP0 = dot(gl_TexCoord[3].xyz, gl_TexCoord[3].xyz); _TMP1 = inversesqrt(_TMP0); _tangent_ws1 = _TMP1*gl_TexCoord[3].xyz; _uv0_ = vec2(gl_TexCoord[2].w, gl_TexCoord[3].w); _uv0065[0] = _uv0_*_uv_scale02; _uv0065[0] = _uv0065[0] + _time2.x*_uv_animation02; _uv_ddx0065[0] = dFdx(_uv0065[0]); _uv_ddy0065[0] = dFdy(_uv0065[0]); _highest10065 = max(0.00000000E+00, 1.00000000E+00); _b0073 = _highest10065 + (1.49804688E+00 - _highest10065); _max_contribution0065[0] = max(0.00000000E+00, _b0073); _total10065 = 1.00000000E+00/_max_contribution0065[0]; _max_contribution0065[0] = _max_contribution0065[0]*_total10065; _pixel_alpha0065 = gl_Color.w*_surf_diffuse2.w; if (false || _max_contribution0065[0] > 0.00000000E+00) { // if begin _TMP76 = texture2DGrad(_diffuse_map02, _uv0065[0], _uv_ddx0065[0], _uv_ddy0065[0]); _diff_txl0065[0] = _TMP76; } else { _diff_txl0065[0] = vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if _pixel_alpha0065 = _pixel_alpha0065*_diff_txl0065[0].w; if (_pixel_alpha0065 <= _alpha_rej2) { // if begin discard; } // end if _contribution0065[0] = max(0.00000000E+00, 1.00000000E+00); _total20065 = 1.00000000E+00/_contribution0065[0]; _contribution0065[0] = _contribution0065[0]*_total20065; if (_contribution0065[0] > 0.00000000E+00) { // if begin _diff_txl0065[0].xyz = _diff_txl0065[0].xyz*vec3(_contribution0065[0], _contribution0065[0], _contribution0065[0]); } else { _diff_txl0065[0].xyz = vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if if (false || _contribution0065[0] > 0.00000000E+00) { // if begin _TMP86 = texture2DGrad(_normal_map02, _uv0065[0], _uv_ddx0065[0], _uv_ddy0065[0]); _norm_txl10065[0] = _TMP86.xyz*vec3(_contribution0065[0], _contribution0065[0], _contribution0065[0]); } // end if _normal_ts0065 = vec3( -2.00000000E+00, 2.00000000E+00, 2.00000000E+00)*(_norm_txl10065[0].xyz - 5.00000000E-01); _val0095 = float((_face3 > 0.00000000E+00)); _TMP11 = _val0095 - float((_face3 < 0.00000000E+00)); _TMP5 = --_render_target_flipping3*_TMP11; _normal_ws0065 = _normal_ws2*vec3(_TMP5, _TMP5, _TMP5); _TMP6 = _normal_ws0065.yzx*_tangent_ws1.zxy - _normal_ws0065.zxy*_tangent_ws1.yzx; _binormal_ws0065 = gl_TexCoord[4].x*_TMP6; _normal_ws0065 = _normal_ts0065.x*_tangent_ws1 + _normal_ts0065.y*_binormal_ws0065 + _normal_ts0065.z*_normal_ws0065; _TMP13 = pow(_diff_txl0065[0].x, 2.20000005E+00); _TMP14 = pow(_diff_txl0065[0].y, 2.20000005E+00); _TMP15 = pow(_diff_txl0065[0].z, 2.20000005E+00); _TMP98 = vec3(_TMP13, _TMP14, _TMP15); _TMP13 = pow(gl_Color.x, 2.20000005E+00); _TMP14 = pow(gl_Color.y, 2.20000005E+00); _TMP15 = pow(gl_Color.z, 2.20000005E+00); _TMP108 = vec3(_TMP13, _TMP14, _TMP15); _diff_colour0065 = _surf_diffuse2.xyz*_TMP98*_TMP108; if (_custom_param1.x < 1.00000000E+00) { // if begin _x10065 = int(gl_FragCoord.x)%8; _y10065 = int(gl_FragCoord.y)%8; _v0119 = _custom_param1.x*1.60000000E+01; _uv0119 = vec2(float(_x10065), float(_y10065)); _uv0119.x = _uv0119.x + float((8.00000000E+00*float((int(_v0119)%4)))); _uv0119.y = _uv0119.y + float((8.00000000E+00*float(int((_v0119/4.00000000E+00))))); _uv0121 = _uv0119/3.20000000E+01; _TMP120 = texture2DGrad(_stipple_map2, _uv0121, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP120.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _cam_dist1 = gl_TexCoord[1].w/_far_clip_distance1; _normal_ws0124 = _normal_ws0065*vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 1.96078443E-03, 1.96078443E-03, 1.96078443E-03); _gloss0124 = _surf_gloss2/5.00000000E+01; _v0126 = _cam_dist1*1.67772150E+07; _x0128 = (_v0126/2.56000000E+02)/2.56000000E+02; _r0126.x = floor(_x0128); _x0130 = (_v0126 - _r0126.x*2.56000000E+02*2.56000000E+02)/2.56000000E+02; _r0126.y = floor(_x0130); _r0126.z = (_v0126 - _r0126.x*2.56000000E+02*2.56000000E+02) - _r0126.y*2.56000000E+02; _TMP8 = _r0126/2.55000000E+02; _texel00124 = vec4(_TMP8.x, _TMP8.y, _TMP8.z, _shadow_oblique_cutoff2); _texel10124 = vec4(_normal_ws0124.x, _normal_ws0124.y, _normal_ws0124.z, 0.00000000E+00); _TMP13 = pow(_diff_colour0065.x, 4.54545438E-01); _TMP14 = pow(_diff_colour0065.y, 4.54545438E-01); _TMP15 = pow(_diff_colour0065.z, 4.54545438E-01); _TMP9 = vec3(_TMP13, _TMP14, _TMP15); _texel20124 = vec4(_TMP9.x, _TMP9.y, _TMP9.z, 0.00000000E+00); _TMP430124 = _surf_specular2/2.00000000E+00; _texel30124 = vec4(_TMP430124.x, _TMP430124.y, _TMP430124.z, _gloss0124); _pixel01 = _texel00124; _pixel11 = _texel10124; _pixel21 = _texel20124; _pixel31 = _texel30124; gl_FragData[3] = _texel30124; gl_FragData[1] = _texel10124; gl_FragData[2] = _texel20124; gl_FragData[0] = _texel00124; } // main end  Cleaned Cg output for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F: #extension GL_ARB_draw_buffers : enable #extension GL_EXT_gpu_shader4 : enable vec4 _pixel01; vec4 _pixel21; vec4 _pixel11; vec4 _pixel31; vec3 _TMP9; float _TMP15; float _TMP14; float _TMP13; vec3 _TMP8; float _face3; vec3 _TMP6; float _TMP5; float _TMP11; float _TMP1; float _TMP0; uniform sampler2D _stipple_map2; uniform sampler2D _diffuse_map02; uniform sampler2D _normal_map02; uniform vec2 _uv_animation02; uniform vec2 _uv_scale02; uniform vec4 _surf_diffuse2; uniform vec3 _surf_specular2; uniform float _surf_gloss2; uniform float _shadow_oblique_cutoff2; uniform vec4 _custom_param1; uniform float _alpha_rej2; uniform vec4 _time2; uniform float _render_target_flipping3; uniform float _far_clip_distance1; vec2 _uv0065[1]; vec2 _uv_ddx0065[1]; vec2 _uv_ddy0065[1]; float _highest10065; float _max_contribution0065[1]; float _total10065; float _pixel_alpha0065; vec4 _diff_txl0065[1]; float _contribution0065[1]; float _total20065; vec3 _norm_txl10065[1]; vec3 _normal_ts0065; vec3 _normal_ws0065; vec3 _binormal_ws0065; vec3 _diff_colour0065; int _x10065; int _y10065; float _b0073; vec4 _TMP76; vec4 _TMP86; float _val0095; vec3 _TMP98; vec3 _TMP108; float _v0119; vec2 _uv0119; vec4 _TMP120; vec2 _uv0121; vec3 _normal_ws0124; float _gloss0124; vec4 _texel00124; vec4 _texel10124; vec4 _texel20124; vec4 _texel30124; vec3 _TMP430124; float _v0126; vec3 _r0126; float _x0128; float _x0130; // main procedure, the original name was fp_main void main() { vec3 _normal_ws2; vec3 _tangent_ws1; vec2 _uv0_; float _cam_dist1; _face3 = float(gl_FrontFacing); _TMP0 = dot(gl_TexCoord[0].xyz, gl_TexCoord[0].xyz); _TMP1 = inversesqrt(_TMP0); _normal_ws2 = _TMP1*gl_TexCoord[0].xyz; _TMP0 = dot(gl_TexCoord[3].xyz, gl_TexCoord[3].xyz); _TMP1 = inversesqrt(_TMP0); _tangent_ws1 = _TMP1*gl_TexCoord[3].xyz; _uv0_ = vec2(gl_TexCoord[2].w, gl_TexCoord[3].w); _uv0065[0] = _uv0_*_uv_scale02; _uv0065[0] = _uv0065[0] + _time2.x*_uv_animation02; _uv_ddx0065[0] = dFdx(_uv0065[0]); _uv_ddy0065[0] = dFdy(_uv0065[0]); _highest10065 = max(0.00000000E+00, 1.00000000E+00); _b0073 = _highest10065 + (1.49804688E+00 - _highest10065); _max_contribution0065[0] = max(0.00000000E+00, _b0073); _total10065 = 1.00000000E+00/_max_contribution0065[0]; _max_contribution0065[0] = _max_contribution0065[0]*_total10065; _pixel_alpha0065 = gl_Color.w*_surf_diffuse2.w; if (false || _max_contribution0065[0] > 0.00000000E+00) { // if begin _TMP76 = texture2DGrad(_diffuse_map02, _uv0065[0], _uv_ddx0065[0], _uv_ddy0065[0]); _diff_txl0065[0] = _TMP76; } else { _diff_txl0065[0] = vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if _pixel_alpha0065 = _pixel_alpha0065*_diff_txl0065[0].w; if (_pixel_alpha0065 <= _alpha_rej2) { // if begin discard; } // end if _contribution0065[0] = max(0.00000000E+00, 1.00000000E+00); _total20065 = 1.00000000E+00/_contribution0065[0]; _contribution0065[0] = _contribution0065[0]*_total20065; if (_contribution0065[0] > 0.00000000E+00) { // if begin _diff_txl0065[0].xyz = _diff_txl0065[0].xyz*vec3(_contribution0065[0], _contribution0065[0], _contribution0065[0]); } else { _diff_txl0065[0].xyz = vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if if (false || _contribution0065[0] > 0.00000000E+00) { // if begin _TMP86 = texture2DGrad(_normal_map02, _uv0065[0], _uv_ddx0065[0], _uv_ddy0065[0]); _norm_txl10065[0] = _TMP86.xyz*vec3(_contribution0065[0], _contribution0065[0], _contribution0065[0]); } // end if _normal_ts0065 = vec3( -2.00000000E+00, 2.00000000E+00, 2.00000000E+00)*(_norm_txl10065[0].xyz - 5.00000000E-01); _val0095 = float((_face3 > 0.00000000E+00)); _TMP11 = _val0095 - float((_face3 < 0.00000000E+00)); _TMP5 = --_render_target_flipping3*_TMP11; _normal_ws0065 = _normal_ws2*vec3(_TMP5, _TMP5, _TMP5); _TMP6 = _normal_ws0065.yzx*_tangent_ws1.zxy - _normal_ws0065.zxy*_tangent_ws1.yzx; _binormal_ws0065 = gl_TexCoord[4].x*_TMP6; _normal_ws0065 = _normal_ts0065.x*_tangent_ws1 + _normal_ts0065.y*_binormal_ws0065 + _normal_ts0065.z*_normal_ws0065; _TMP13 = pow(_diff_txl0065[0].x, 2.20000005E+00); _TMP14 = pow(_diff_txl0065[0].y, 2.20000005E+00); _TMP15 = pow(_diff_txl0065[0].z, 2.20000005E+00); _TMP98 = vec3(_TMP13, _TMP14, _TMP15); _TMP13 = pow(gl_Color.x, 2.20000005E+00); _TMP14 = pow(gl_Color.y, 2.20000005E+00); _TMP15 = pow(gl_Color.z, 2.20000005E+00); _TMP108 = vec3(_TMP13, _TMP14, _TMP15); _diff_colour0065 = _surf_diffuse2.xyz*_TMP98*_TMP108; if (_custom_param1.x < 1.00000000E+00) { // if begin _x10065 = int(gl_FragCoord.x)%8; _y10065 = int(gl_FragCoord.y)%8; _v0119 = _custom_param1.x*1.60000000E+01; _uv0119 = vec2(float(_x10065), float(_y10065)); _uv0119.x = _uv0119.x + float((8.00000000E+00*float((int(_v0119)%4)))); _uv0119.y = _uv0119.y + float((8.00000000E+00*float(int((_v0119/4.00000000E+00))))); _uv0121 = _uv0119/3.20000000E+01; _TMP120 = texture2DGrad(_stipple_map2, _uv0121, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP120.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _cam_dist1 = gl_TexCoord[1].w/_far_clip_distance1; _normal_ws0124 = _normal_ws0065*vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 1.96078443E-03, 1.96078443E-03, 1.96078443E-03); _gloss0124 = _surf_gloss2/5.00000000E+01; _v0126 = _cam_dist1*1.67772150E+07; _x0128 = (_v0126/2.56000000E+02)/2.56000000E+02; _r0126.x = floor(_x0128); _x0130 = (_v0126 - _r0126.x*2.56000000E+02*2.56000000E+02)/2.56000000E+02; _r0126.y = floor(_x0130); _r0126.z = (_v0126 - _r0126.x*2.56000000E+02*2.56000000E+02) - _r0126.y*2.56000000E+02; _TMP8 = _r0126/2.55000000E+02; _texel00124 = vec4(_TMP8.x, _TMP8.y, _TMP8.z, _shadow_oblique_cutoff2); _texel10124 = vec4(_normal_ws0124.x, _normal_ws0124.y, _normal_ws0124.z, 0.00000000E+00); _TMP13 = pow(_diff_colour0065.x, 4.54545438E-01); _TMP14 = pow(_diff_colour0065.y, 4.54545438E-01); _TMP15 = pow(_diff_colour0065.z, 4.54545438E-01); _TMP9 = vec3(_TMP13, _TMP14, _TMP15); _texel20124 = vec4(_TMP9.x, _TMP9.y, _TMP9.z, 0.00000000E+00); _TMP430124 = _surf_specular2/2.00000000E+00; _texel30124 = vec4(_TMP430124.x, _TMP430124.y, _TMP430124.z, _gloss0124); _pixel01 = _texel00124; _pixel11 = _texel10124; _pixel21 = _texel20124; _pixel31 = _texel30124; gl_FragData[3] = _texel30124; gl_FragData[1] = _texel10124; gl_FragData[2] = _texel20124; gl_FragData[0] = _texel00124; } // main end  Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej2 with alpha_rej replaced _alpha_rej2[0] with alpha_rej[0] replaced _custom_param1 with custom_param replaced _custom_param1[0] with custom_param[0] replaced _diffuse_map02 with diffuse_map0 replaced _diffuse_map02[0] with diffuse_map0[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _normal_map02 with normal_map0 replaced _normal_map02[0] with normal_map0[0] replaced _render_target_flipping3 with render_target_flipping replaced _render_target_flipping3[0] with render_target_flipping[0] replaced _shadow_oblique_cutoff2 with shadow_oblique_cutoff replaced _shadow_oblique_cutoff2[0] with shadow_oblique_cutoff[0] replaced _stipple_map2 with stipple_map replaced _stipple_map2[0] with stipple_map[0] replaced _surf_diffuse2 with surf_diffuse replaced _surf_diffuse2[0] with surf_diffuse[0] replaced _surf_gloss2 with surf_gloss replaced _surf_gloss2[0] with surf_gloss[0] replaced _surf_specular2 with surf_specular replaced _surf_specular2[0] with surf_specular[0] replaced _time2 with time replaced _time2[0] with time[0] replaced _uv_animation02 with uv_animation0 replaced _uv_animation02[0] with uv_animation0[0] replaced _uv_scale02 with uv_scale0 replaced _uv_scale02[0] with uv_scale0[0] Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Requested GpuProgramParameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:D_p_N_s_t_c_1_o_T_0_0_g_w_R_m_F Compiling shader: recv_v:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F recv_f:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F 0 Cg output for recv_v:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=1 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=1 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=1 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3),uniform sampler2D diffuse_map0 : register(s4),uniform sampler2D normal_map0 : register(s5), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, sampler2D diffuse_map0, sampler2D normal_map0, -DEXTRA_MAP_ARGS=stipple_map, diffuse_map0, normal_map0, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS=diffuse_map0, -DNORMAL_MAPS=normal_map0, -DSPEC_MAPS= -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.bone_matrixes //semantic vp_main.world //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.camera_pos_ws //var float4x4 view : : _view1[0], 4 : 7 : 1 //var float4x4 proj : : _proj1[0], 4 : 8 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float3 normal_os : $vin.NORMAL : ATTR2 : 1 : 1 //var float4 tangent_with_parity : $vin.TANGENT : $TANGENT : 2 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 3 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 4 : 1 //var float4 out00 : $vout.TEXCOORD0 : TEX0 : 10 : 1 //var float4 out01 : $vout.TEXCOORD1 : TEX1 : 11 : 1 //var float4 out02 : $vout.TEXCOORD2 : TEX2 : 12 : 1 //var float4 out03 : $vout.TEXCOORD3 : TEX3 : 13 : 1 //var float4 out04 : $vout.TEXCOORD4 : TEX4 : 14 : 1 //var float4 out05 : $vout.TEXCOORD5 : TEX5 : 15 : 1 //var float4 out06 : $vout.TEXCOORD6 : TEX6 : 16 : 1 //var float4 out07 : $vout.TEXCOORD7 : TEX7 : 17 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 18 : 1 //var float4 vert_colour : $vout.COLOR0 : COL0 : 19 : 1 vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; vec4 _r0013; vec4 _v0013; vec4 _r0023; vec4 _v0023; attribute vec4 TANGENT; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0013 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0013.x = dot(_view1[0], _v0013); _r0013.y = dot(_view1[1], _v0013); _r0013.z = dot(_view1[2], _v0013); _v0023 = vec4(_r0013.x, _r0013.y, _r0013.z, 1.00000000E+00); _r0023.x = dot(_proj1[0], _v0023); _r0023.y = dot(_proj1[1], _v0023); _r0023.z = dot(_proj1[2], _v0023); _r0023.w = dot(_proj1[3], _v0023); _for_rasteriser1 = _r0023; _out001.xyz = gl_Normal; _out031.xyz = TANGENT.xyz; _out041.x = TANGENT.w; _out011.w = -_r0013.z; _out021.w = gl_MultiTexCoord0.x; _out031.w = gl_MultiTexCoord0.y; _out041.y = 0.00000000E+00; _out041.z = 0.00000000E+00; _out041.w = gl_MultiTexCoord1.x; gl_TexCoord[4] = _out041; gl_TexCoord[7] = _out071; gl_TexCoord[2] = _out021; gl_TexCoord[5] = _out051; gl_TexCoord[0] = _out001; gl_TexCoord[3] = _out031; gl_TexCoord[6] = _out061; gl_TexCoord[1] = _out011; gl_FrontColor = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); gl_Position = _r0023; } // main end  Cleaned Cg output for recv_v:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F: vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform mat4 _view1; uniform mat4 _proj1; vec4 _r0013; vec4 _v0013; vec4 _r0023; vec4 _v0023; attribute vec4 TANGENT; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0013 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0013.x = dot(_view1[0], _v0013); _r0013.y = dot(_view1[1], _v0013); _r0013.z = dot(_view1[2], _v0013); _v0023 = vec4(_r0013.x, _r0013.y, _r0013.z, 1.00000000E+00); _r0023.x = dot(_proj1[0], _v0023); _r0023.y = dot(_proj1[1], _v0023); _r0023.z = dot(_proj1[2], _v0023); _r0023.w = dot(_proj1[3], _v0023); _for_rasteriser1 = _r0023; _out001.xyz = gl_Normal; _out031.xyz = TANGENT.xyz; _out041.x = TANGENT.w; _out011.w = -_r0013.z; _out021.w = gl_MultiTexCoord0.x; _out031.w = gl_MultiTexCoord0.y; _out041.y = 0.00000000E+00; _out041.z = 0.00000000E+00; _out041.w = gl_MultiTexCoord1.x; gl_TexCoord[4] = _out041; gl_TexCoord[7] = _out071; gl_TexCoord[2] = _out021; gl_TexCoord[5] = _out051; gl_TexCoord[0] = _out001; gl_TexCoord[3] = _out031; gl_TexCoord[6] = _out061; gl_TexCoord[1] = _out011; gl_FrontColor = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); gl_Position = _r0023; } // main end  Getting default parameters for recv_v:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Replacing parameters... Replacing parameter names. replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _view1 with view replaced _view1[0] with view[0] Getting default parameters for recv_v:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Cg output for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=1 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=1 -DUSE_SPECULAR_MAP=0 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=1 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3),uniform sampler2D diffuse_map0 : register(s4),uniform sampler2D normal_map0 : register(s5), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, sampler2D diffuse_map0, sampler2D normal_map0, -DEXTRA_MAP_ARGS=stipple_map, diffuse_map0, normal_map0, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS=diffuse_map0, -DNORMAL_MAPS=normal_map0, -DSPEC_MAPS= -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.stipple_map : TEXUNIT3 //semantic fp_main.diffuse_map0 : TEXUNIT4 //semantic fp_main.normal_map0 : TEXUNIT5 //semantic fp_main.spec_diff_brightness0 //semantic fp_main.spec_diff_contrast0 //semantic fp_main.uv_animation0 //semantic fp_main.uv_scale0 //semantic fp_main.uv0 //semantic fp_main.surf_diffuse //semantic fp_main.surf_specular //semantic fp_main.surf_gloss //semantic fp_main.shadow_oblique_cutoff //semantic fp_main.custom_param //semantic fp_main.alpha_rej //semantic fp_main.time //semantic fp_main.texture_size //semantic fp_main.col1 //semantic fp_main.col2 //semantic fp_main.col3 //semantic fp_main.col4 //semantic fp_main.col_spec1 //semantic fp_main.col_spec2 //semantic fp_main.col_spec3 //semantic fp_main.col_spec4 //semantic fp_main.microflakes_mask //semantic fp_main.render_target_flipping //semantic fp_main.far_clip_distance //var sampler2D stipple_map : TEXUNIT3 : _stipple_map2 3 : 11 : 1 //var sampler2D diffuse_map0 : TEXUNIT4 : _diffuse_map02 4 : 12 : 1 //var sampler2D normal_map0 : TEXUNIT5 : _normal_map02 5 : 13 : 1 //var float2 uv_animation0 : : _uv_animation02 : 16 : 1 //var float2 uv_scale0 : : _uv_scale02 : 17 : 1 //var float4 surf_diffuse : : _surf_diffuse2 : 19 : 1 //var float3 surf_specular : : _surf_specular2 : 20 : 1 //var float surf_gloss : : _surf_gloss2 : 21 : 1 //var float shadow_oblique_cutoff : : _shadow_oblique_cutoff2 : 22 : 1 //var float alpha_rej : : _alpha_rej2 : 24 : 1 //var float4 time : : _time2 : 25 : 1 //var float render_target_flipping : : _render_target_flipping3 : 36 : 1 //var float far_clip_distance : : _far_clip_distance1 : 37 : 1 //var float4 vert_colour : $vin.COLOR0 : COL0 : 0 : 1 //var float face : $vin.FACE : FACE : 1 : 1 //var float4 out00 : $vin.TEXCOORD0 : TEX0 : 2 : 1 //var float4 out01 : $vin.TEXCOORD1 : TEX1 : 3 : 1 //var float4 out02 : $vin.TEXCOORD2 : TEX2 : 4 : 1 //var float4 out03 : $vin.TEXCOORD3 : TEX3 : 5 : 1 //var float4 out04 : $vin.TEXCOORD4 : TEX4 : 6 : 1 //var float4 out05 : $vin.TEXCOORD5 : : 7 : 0 //var float4 out06 : $vin.TEXCOORD6 : : 8 : 0 //var float4 out07 : $vin.TEXCOORD7 : : 9 : 0 //var float2 wpos : $vin.WPOS : WPOS : 10 : 1 //var float4 pixel0 : $vout.COLOR0 : COL : 38 : 1 //var float4 pixel1 : $vout.COLOR1 : COL1 : 39 : 1 //var float4 pixel2 : $vout.COLOR2 : COL2 : 40 : 1 //var float4 pixel3 : $vout.COLOR3 : COL3 : 41 : 1 #extension GL_ARB_draw_buffers : enable #extension GL_EXT_gpu_shader4 : enable vec4 _pixel01; vec4 _pixel21; vec4 _pixel11; vec4 _pixel31; vec3 _TMP9; float _TMP15; float _TMP14; float _TMP13; vec3 _TMP8; float _face3; vec3 _TMP6; float _TMP5; float _TMP11; float _TMP1; float _TMP0; uniform sampler2D _stipple_map2; uniform sampler2D _diffuse_map02; uniform sampler2D _normal_map02; uniform vec2 _uv_animation02; uniform vec2 _uv_scale02; uniform vec4 _surf_diffuse2; uniform vec3 _surf_specular2; uniform float _surf_gloss2; uniform float _shadow_oblique_cutoff2; uniform float _alpha_rej2; uniform vec4 _time2; uniform float _render_target_flipping3; uniform float _far_clip_distance1; vec2 _uv0065[1]; vec2 _uv_ddx0065[1]; vec2 _uv_ddy0065[1]; float _highest10065; float _max_contribution0065[1]; float _total10065; float _pixel_alpha0065; vec4 _diff_txl0065[1]; float _contribution0065[1]; float _total20065; vec3 _norm_txl10065[1]; vec3 _normal_ts0065; vec3 _normal_ws0065; vec3 _binormal_ws0065; vec3 _diff_colour0065; float _v0065; int _x10065; int _y10065; float _b0073; vec4 _TMP76; vec4 _TMP86; float _val0095; vec3 _TMP98; vec3 _TMP108; float _v0119; vec2 _uv0119; vec4 _TMP120; vec2 _uv0121; vec3 _normal_ws0124; float _gloss0124; vec4 _texel00124; vec4 _texel10124; vec4 _texel20124; vec4 _texel30124; vec3 _TMP430124; float _v0126; vec3 _r0126; float _x0128; float _x0130; // main procedure, the original name was fp_main void main() { vec3 _normal_ws2; vec3 _tangent_ws1; vec2 _uv0_; float _cam_dist1; _face3 = float(gl_FrontFacing); _TMP0 = dot(gl_TexCoord[0].xyz, gl_TexCoord[0].xyz); _TMP1 = inversesqrt(_TMP0); _normal_ws2 = _TMP1*gl_TexCoord[0].xyz; _TMP0 = dot(gl_TexCoord[3].xyz, gl_TexCoord[3].xyz); _TMP1 = inversesqrt(_TMP0); _tangent_ws1 = _TMP1*gl_TexCoord[3].xyz; _uv0_ = vec2(gl_TexCoord[2].w, gl_TexCoord[3].w); _uv0065[0] = _uv0_*_uv_scale02; _uv0065[0] = _uv0065[0] + _time2.x*_uv_animation02; _uv_ddx0065[0] = dFdx(_uv0065[0]); _uv_ddy0065[0] = dFdy(_uv0065[0]); _highest10065 = max(0.00000000E+00, 1.00000000E+00); _b0073 = _highest10065 + (1.49804688E+00 - _highest10065); _max_contribution0065[0] = max(0.00000000E+00, _b0073); _total10065 = 1.00000000E+00/_max_contribution0065[0]; _max_contribution0065[0] = _max_contribution0065[0]*_total10065; _pixel_alpha0065 = gl_Color.w*_surf_diffuse2.w; if (false || _max_contribution0065[0] > 0.00000000E+00) { // if begin _TMP76 = texture2DGrad(_diffuse_map02, _uv0065[0], _uv_ddx0065[0], _uv_ddy0065[0]); _diff_txl0065[0] = _TMP76; } else { _diff_txl0065[0] = vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if _pixel_alpha0065 = _pixel_alpha0065*_diff_txl0065[0].w; if (_pixel_alpha0065 <= _alpha_rej2) { // if begin discard; } // end if _contribution0065[0] = max(0.00000000E+00, 1.00000000E+00); _total20065 = 1.00000000E+00/_contribution0065[0]; _contribution0065[0] = _contribution0065[0]*_total20065; if (_contribution0065[0] > 0.00000000E+00) { // if begin _diff_txl0065[0].xyz = _diff_txl0065[0].xyz*vec3(_contribution0065[0], _contribution0065[0], _contribution0065[0]); } else { _diff_txl0065[0].xyz = vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if if (false || _contribution0065[0] > 0.00000000E+00) { // if begin _TMP86 = texture2DGrad(_normal_map02, _uv0065[0], _uv_ddx0065[0], _uv_ddy0065[0]); _norm_txl10065[0] = _TMP86.xyz*vec3(_contribution0065[0], _contribution0065[0], _contribution0065[0]); } // end if _normal_ts0065 = vec3( -2.00000000E+00, 2.00000000E+00, 2.00000000E+00)*(_norm_txl10065[0].xyz - 5.00000000E-01); _val0095 = float((_face3 > 0.00000000E+00)); _TMP11 = _val0095 - float((_face3 < 0.00000000E+00)); _TMP5 = --_render_target_flipping3*_TMP11; _normal_ws0065 = _normal_ws2*vec3(_TMP5, _TMP5, _TMP5); _TMP6 = _normal_ws0065.yzx*_tangent_ws1.zxy - _normal_ws0065.zxy*_tangent_ws1.yzx; _binormal_ws0065 = gl_TexCoord[4].x*_TMP6; _normal_ws0065 = _normal_ts0065.x*_tangent_ws1 + _normal_ts0065.y*_binormal_ws0065 + _normal_ts0065.z*_normal_ws0065; _TMP13 = pow(_diff_txl0065[0].x, 2.20000005E+00); _TMP14 = pow(_diff_txl0065[0].y, 2.20000005E+00); _TMP15 = pow(_diff_txl0065[0].z, 2.20000005E+00); _TMP98 = vec3(_TMP13, _TMP14, _TMP15); _TMP13 = pow(gl_Color.x, 2.20000005E+00); _TMP14 = pow(gl_Color.y, 2.20000005E+00); _TMP15 = pow(gl_Color.z, 2.20000005E+00); _TMP108 = vec3(_TMP13, _TMP14, _TMP15); _diff_colour0065 = _surf_diffuse2.xyz*_TMP98*_TMP108; _v0065 = gl_TexCoord[4].w + 1.95312500E-03; if (_v0065 < 1.00000000E+00) { // if begin _x10065 = int(gl_FragCoord.x)%8; _y10065 = int(gl_FragCoord.y)%8; _v0119 = _v0065*1.60000000E+01; _uv0119 = vec2(float(_x10065), float(_y10065)); _uv0119.x = _uv0119.x + float((8.00000000E+00*float((int(_v0119)%4)))); _uv0119.y = _uv0119.y + float((8.00000000E+00*float(int((_v0119/4.00000000E+00))))); _uv0121 = _uv0119/3.20000000E+01; _TMP120 = texture2DGrad(_stipple_map2, _uv0121, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP120.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _cam_dist1 = gl_TexCoord[1].w/_far_clip_distance1; _normal_ws0124 = _normal_ws0065*vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 1.96078443E-03, 1.96078443E-03, 1.96078443E-03); _gloss0124 = _surf_gloss2/5.00000000E+01; _v0126 = _cam_dist1*1.67772150E+07; _x0128 = (_v0126/2.56000000E+02)/2.56000000E+02; _r0126.x = floor(_x0128); _x0130 = (_v0126 - _r0126.x*2.56000000E+02*2.56000000E+02)/2.56000000E+02; _r0126.y = floor(_x0130); _r0126.z = (_v0126 - _r0126.x*2.56000000E+02*2.56000000E+02) - _r0126.y*2.56000000E+02; _TMP8 = _r0126/2.55000000E+02; _texel00124 = vec4(_TMP8.x, _TMP8.y, _TMP8.z, _shadow_oblique_cutoff2); _texel10124 = vec4(_normal_ws0124.x, _normal_ws0124.y, _normal_ws0124.z, 0.00000000E+00); _TMP13 = pow(_diff_colour0065.x, 4.54545438E-01); _TMP14 = pow(_diff_colour0065.y, 4.54545438E-01); _TMP15 = pow(_diff_colour0065.z, 4.54545438E-01); _TMP9 = vec3(_TMP13, _TMP14, _TMP15); _texel20124 = vec4(_TMP9.x, _TMP9.y, _TMP9.z, 0.00000000E+00); _TMP430124 = _surf_specular2/2.00000000E+00; _texel30124 = vec4(_TMP430124.x, _TMP430124.y, _TMP430124.z, _gloss0124); _pixel01 = _texel00124; _pixel11 = _texel10124; _pixel21 = _texel20124; _pixel31 = _texel30124; gl_FragData[3] = _texel30124; gl_FragData[1] = _texel10124; gl_FragData[2] = _texel20124; gl_FragData[0] = _texel00124; } // main end  Cleaned Cg output for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F: #extension GL_ARB_draw_buffers : enable #extension GL_EXT_gpu_shader4 : enable vec4 _pixel01; vec4 _pixel21; vec4 _pixel11; vec4 _pixel31; vec3 _TMP9; float _TMP15; float _TMP14; float _TMP13; vec3 _TMP8; float _face3; vec3 _TMP6; float _TMP5; float _TMP11; float _TMP1; float _TMP0; uniform sampler2D _stipple_map2; uniform sampler2D _diffuse_map02; uniform sampler2D _normal_map02; uniform vec2 _uv_animation02; uniform vec2 _uv_scale02; uniform vec4 _surf_diffuse2; uniform vec3 _surf_specular2; uniform float _surf_gloss2; uniform float _shadow_oblique_cutoff2; uniform float _alpha_rej2; uniform vec4 _time2; uniform float _render_target_flipping3; uniform float _far_clip_distance1; vec2 _uv0065[1]; vec2 _uv_ddx0065[1]; vec2 _uv_ddy0065[1]; float _highest10065; float _max_contribution0065[1]; float _total10065; float _pixel_alpha0065; vec4 _diff_txl0065[1]; float _contribution0065[1]; float _total20065; vec3 _norm_txl10065[1]; vec3 _normal_ts0065; vec3 _normal_ws0065; vec3 _binormal_ws0065; vec3 _diff_colour0065; float _v0065; int _x10065; int _y10065; float _b0073; vec4 _TMP76; vec4 _TMP86; float _val0095; vec3 _TMP98; vec3 _TMP108; float _v0119; vec2 _uv0119; vec4 _TMP120; vec2 _uv0121; vec3 _normal_ws0124; float _gloss0124; vec4 _texel00124; vec4 _texel10124; vec4 _texel20124; vec4 _texel30124; vec3 _TMP430124; float _v0126; vec3 _r0126; float _x0128; float _x0130; // main procedure, the original name was fp_main void main() { vec3 _normal_ws2; vec3 _tangent_ws1; vec2 _uv0_; float _cam_dist1; _face3 = float(gl_FrontFacing); _TMP0 = dot(gl_TexCoord[0].xyz, gl_TexCoord[0].xyz); _TMP1 = inversesqrt(_TMP0); _normal_ws2 = _TMP1*gl_TexCoord[0].xyz; _TMP0 = dot(gl_TexCoord[3].xyz, gl_TexCoord[3].xyz); _TMP1 = inversesqrt(_TMP0); _tangent_ws1 = _TMP1*gl_TexCoord[3].xyz; _uv0_ = vec2(gl_TexCoord[2].w, gl_TexCoord[3].w); _uv0065[0] = _uv0_*_uv_scale02; _uv0065[0] = _uv0065[0] + _time2.x*_uv_animation02; _uv_ddx0065[0] = dFdx(_uv0065[0]); _uv_ddy0065[0] = dFdy(_uv0065[0]); _highest10065 = max(0.00000000E+00, 1.00000000E+00); _b0073 = _highest10065 + (1.49804688E+00 - _highest10065); _max_contribution0065[0] = max(0.00000000E+00, _b0073); _total10065 = 1.00000000E+00/_max_contribution0065[0]; _max_contribution0065[0] = _max_contribution0065[0]*_total10065; _pixel_alpha0065 = gl_Color.w*_surf_diffuse2.w; if (false || _max_contribution0065[0] > 0.00000000E+00) { // if begin _TMP76 = texture2DGrad(_diffuse_map02, _uv0065[0], _uv_ddx0065[0], _uv_ddy0065[0]); _diff_txl0065[0] = _TMP76; } else { _diff_txl0065[0] = vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if _pixel_alpha0065 = _pixel_alpha0065*_diff_txl0065[0].w; if (_pixel_alpha0065 <= _alpha_rej2) { // if begin discard; } // end if _contribution0065[0] = max(0.00000000E+00, 1.00000000E+00); _total20065 = 1.00000000E+00/_contribution0065[0]; _contribution0065[0] = _contribution0065[0]*_total20065; if (_contribution0065[0] > 0.00000000E+00) { // if begin _diff_txl0065[0].xyz = _diff_txl0065[0].xyz*vec3(_contribution0065[0], _contribution0065[0], _contribution0065[0]); } else { _diff_txl0065[0].xyz = vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if if (false || _contribution0065[0] > 0.00000000E+00) { // if begin _TMP86 = texture2DGrad(_normal_map02, _uv0065[0], _uv_ddx0065[0], _uv_ddy0065[0]); _norm_txl10065[0] = _TMP86.xyz*vec3(_contribution0065[0], _contribution0065[0], _contribution0065[0]); } // end if _normal_ts0065 = vec3( -2.00000000E+00, 2.00000000E+00, 2.00000000E+00)*(_norm_txl10065[0].xyz - 5.00000000E-01); _val0095 = float((_face3 > 0.00000000E+00)); _TMP11 = _val0095 - float((_face3 < 0.00000000E+00)); _TMP5 = --_render_target_flipping3*_TMP11; _normal_ws0065 = _normal_ws2*vec3(_TMP5, _TMP5, _TMP5); _TMP6 = _normal_ws0065.yzx*_tangent_ws1.zxy - _normal_ws0065.zxy*_tangent_ws1.yzx; _binormal_ws0065 = gl_TexCoord[4].x*_TMP6; _normal_ws0065 = _normal_ts0065.x*_tangent_ws1 + _normal_ts0065.y*_binormal_ws0065 + _normal_ts0065.z*_normal_ws0065; _TMP13 = pow(_diff_txl0065[0].x, 2.20000005E+00); _TMP14 = pow(_diff_txl0065[0].y, 2.20000005E+00); _TMP15 = pow(_diff_txl0065[0].z, 2.20000005E+00); _TMP98 = vec3(_TMP13, _TMP14, _TMP15); _TMP13 = pow(gl_Color.x, 2.20000005E+00); _TMP14 = pow(gl_Color.y, 2.20000005E+00); _TMP15 = pow(gl_Color.z, 2.20000005E+00); _TMP108 = vec3(_TMP13, _TMP14, _TMP15); _diff_colour0065 = _surf_diffuse2.xyz*_TMP98*_TMP108; _v0065 = gl_TexCoord[4].w + 1.95312500E-03; if (_v0065 < 1.00000000E+00) { // if begin _x10065 = int(gl_FragCoord.x)%8; _y10065 = int(gl_FragCoord.y)%8; _v0119 = _v0065*1.60000000E+01; _uv0119 = vec2(float(_x10065), float(_y10065)); _uv0119.x = _uv0119.x + float((8.00000000E+00*float((int(_v0119)%4)))); _uv0119.y = _uv0119.y + float((8.00000000E+00*float(int((_v0119/4.00000000E+00))))); _uv0121 = _uv0119/3.20000000E+01; _TMP120 = texture2DGrad(_stipple_map2, _uv0121, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP120.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _cam_dist1 = gl_TexCoord[1].w/_far_clip_distance1; _normal_ws0124 = _normal_ws0065*vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 1.96078443E-03, 1.96078443E-03, 1.96078443E-03); _gloss0124 = _surf_gloss2/5.00000000E+01; _v0126 = _cam_dist1*1.67772150E+07; _x0128 = (_v0126/2.56000000E+02)/2.56000000E+02; _r0126.x = floor(_x0128); _x0130 = (_v0126 - _r0126.x*2.56000000E+02*2.56000000E+02)/2.56000000E+02; _r0126.y = floor(_x0130); _r0126.z = (_v0126 - _r0126.x*2.56000000E+02*2.56000000E+02) - _r0126.y*2.56000000E+02; _TMP8 = _r0126/2.55000000E+02; _texel00124 = vec4(_TMP8.x, _TMP8.y, _TMP8.z, _shadow_oblique_cutoff2); _texel10124 = vec4(_normal_ws0124.x, _normal_ws0124.y, _normal_ws0124.z, 0.00000000E+00); _TMP13 = pow(_diff_colour0065.x, 4.54545438E-01); _TMP14 = pow(_diff_colour0065.y, 4.54545438E-01); _TMP15 = pow(_diff_colour0065.z, 4.54545438E-01); _TMP9 = vec3(_TMP13, _TMP14, _TMP15); _texel20124 = vec4(_TMP9.x, _TMP9.y, _TMP9.z, 0.00000000E+00); _TMP430124 = _surf_specular2/2.00000000E+00; _texel30124 = vec4(_TMP430124.x, _TMP430124.y, _TMP430124.z, _gloss0124); _pixel01 = _texel00124; _pixel11 = _texel10124; _pixel21 = _texel20124; _pixel31 = _texel30124; gl_FragData[3] = _texel30124; gl_FragData[1] = _texel10124; gl_FragData[2] = _texel20124; gl_FragData[0] = _texel00124; } // main end  Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej2 with alpha_rej replaced _alpha_rej2[0] with alpha_rej[0] replaced _diffuse_map02 with diffuse_map0 replaced _diffuse_map02[0] with diffuse_map0[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _normal_map02 with normal_map0 replaced _normal_map02[0] with normal_map0[0] replaced _render_target_flipping3 with render_target_flipping replaced _render_target_flipping3[0] with render_target_flipping[0] replaced _shadow_oblique_cutoff2 with shadow_oblique_cutoff replaced _shadow_oblique_cutoff2[0] with shadow_oblique_cutoff[0] replaced _stipple_map2 with stipple_map replaced _stipple_map2[0] with stipple_map[0] replaced _surf_diffuse2 with surf_diffuse replaced _surf_diffuse2[0] with surf_diffuse[0] replaced _surf_gloss2 with surf_gloss replaced _surf_gloss2[0] with surf_gloss[0] replaced _surf_specular2 with surf_specular replaced _surf_specular2[0] with surf_specular[0] replaced _time2 with time replaced _time2[0] with time[0] replaced _uv_animation02 with uv_animation0 replaced _uv_animation02[0] with uv_animation0[0] replaced _uv_scale02 with uv_scale0 replaced _uv_scale02[0] with uv_scale0[0] Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F Delegating... Requested GpuProgramParameters for recv_f:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:D_p_N_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_f:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:d_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:D_p_n_s_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_f:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Requested GpuProgramParameters for recv_v:D_p_n_s_t_c_1_o_T_0_0_g_W_R_m_F Compiling shader: recv_v:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F 0 Cg output for recv_v:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=1 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=1 -DUSE_SPECULAR_MAP=1 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=0 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3),uniform sampler2D diffuse_map0 : register(s4),uniform sampler2D normal_map0 : register(s5),uniform sampler2D spec_map0 : register(s6), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, sampler2D diffuse_map0, sampler2D normal_map0, sampler2D spec_map0, -DEXTRA_MAP_ARGS=stipple_map, diffuse_map0, normal_map0, spec_map0, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS=diffuse_map0, -DNORMAL_MAPS=normal_map0, -DSPEC_MAPS=spec_map0, -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.bone_matrixes //semantic vp_main.world //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.camera_pos_ws //var float4x4 world : : _world2[0], 4 : 5 : 1 //var float4x4 view : : _view1[0], 4 : 6 : 1 //var float4x4 proj : : _proj1[0], 4 : 7 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float3 normal_os : $vin.NORMAL : ATTR2 : 1 : 1 //var float4 tangent_with_parity : $vin.TANGENT : $TANGENT : 2 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 3 : 1 //var float4 out00 : $vout.TEXCOORD0 : TEX0 : 9 : 1 //var float4 out01 : $vout.TEXCOORD1 : TEX1 : 10 : 1 //var float4 out02 : $vout.TEXCOORD2 : TEX2 : 11 : 1 //var float4 out03 : $vout.TEXCOORD3 : TEX3 : 12 : 1 //var float4 out04 : $vout.TEXCOORD4 : TEX4 : 13 : 1 //var float4 out05 : $vout.TEXCOORD5 : TEX5 : 14 : 1 //var float4 out06 : $vout.TEXCOORD6 : TEX6 : 15 : 1 //var float4 out07 : $vout.TEXCOORD7 : TEX7 : 16 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 17 : 1 //var float4 vert_colour : $vout.COLOR0 : COL0 : 18 : 1 vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform vec4 _world2[4]; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; vec4 _r0017; vec4 _v0017; vec4 _r0027; vec4 _v0027; vec4 _r0037; vec4 _v0037; vec4 _r0049; vec4 _v0049; vec4 _r0059; vec4 _v0059; attribute vec4 TANGENT; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0017 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0017.x = dot(_world2[0], _v0017); _r0017.y = dot(_world2[1], _v0017); _r0017.z = dot(_world2[2], _v0017); _v0027 = vec4(gl_Normal.x, gl_Normal.y, gl_Normal.z, 0.00000000E+00); _r0027.x = dot(_world2[0], _v0027); _r0027.y = dot(_world2[1], _v0027); _r0027.z = dot(_world2[2], _v0027); _v0037 = vec4(TANGENT.x, TANGENT.y, TANGENT.z, 0.00000000E+00); _r0037.x = dot(_world2[0], _v0037); _r0037.y = dot(_world2[1], _v0037); _r0037.z = dot(_world2[2], _v0037); _v0049 = vec4(_r0017.x, _r0017.y, _r0017.z, 1.00000000E+00); _r0049.x = dot(_view1[0], _v0049); _r0049.y = dot(_view1[1], _v0049); _r0049.z = dot(_view1[2], _v0049); _v0059 = vec4(_r0049.x, _r0049.y, _r0049.z, 1.00000000E+00); _r0059.x = dot(_proj1[0], _v0059); _r0059.y = dot(_proj1[1], _v0059); _r0059.z = dot(_proj1[2], _v0059); _r0059.w = dot(_proj1[3], _v0059); _for_rasteriser1 = _r0059; _out001.xyz = _r0027.xyz; _out031.xyz = _r0037.xyz; _out041.x = TANGENT.w; _out011.w = -_r0049.z; _out021.w = gl_MultiTexCoord0.x; _out031.w = gl_MultiTexCoord0.y; _out041.y = 0.00000000E+00; _out041.z = 0.00000000E+00; gl_TexCoord[4] = _out041; gl_TexCoord[7] = _out071; gl_TexCoord[2] = _out021; gl_TexCoord[5] = _out051; gl_TexCoord[0] = _out001; gl_TexCoord[3] = _out031; gl_TexCoord[6] = _out061; gl_TexCoord[1] = _out011; gl_FrontColor = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); gl_Position = _r0059; } // main end  Cleaned Cg output for recv_v:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F: vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform mat4 _world2; uniform mat4 _view1; uniform mat4 _proj1; vec4 _r0017; vec4 _v0017; vec4 _r0027; vec4 _v0027; vec4 _r0037; vec4 _v0037; vec4 _r0049; vec4 _v0049; vec4 _r0059; vec4 _v0059; attribute vec4 TANGENT; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0017 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0017.x = dot(_world2[0], _v0017); _r0017.y = dot(_world2[1], _v0017); _r0017.z = dot(_world2[2], _v0017); _v0027 = vec4(gl_Normal.x, gl_Normal.y, gl_Normal.z, 0.00000000E+00); _r0027.x = dot(_world2[0], _v0027); _r0027.y = dot(_world2[1], _v0027); _r0027.z = dot(_world2[2], _v0027); _v0037 = vec4(TANGENT.x, TANGENT.y, TANGENT.z, 0.00000000E+00); _r0037.x = dot(_world2[0], _v0037); _r0037.y = dot(_world2[1], _v0037); _r0037.z = dot(_world2[2], _v0037); _v0049 = vec4(_r0017.x, _r0017.y, _r0017.z, 1.00000000E+00); _r0049.x = dot(_view1[0], _v0049); _r0049.y = dot(_view1[1], _v0049); _r0049.z = dot(_view1[2], _v0049); _v0059 = vec4(_r0049.x, _r0049.y, _r0049.z, 1.00000000E+00); _r0059.x = dot(_proj1[0], _v0059); _r0059.y = dot(_proj1[1], _v0059); _r0059.z = dot(_proj1[2], _v0059); _r0059.w = dot(_proj1[3], _v0059); _for_rasteriser1 = _r0059; _out001.xyz = _r0027.xyz; _out031.xyz = _r0037.xyz; _out041.x = TANGENT.w; _out011.w = -_r0049.z; _out021.w = gl_MultiTexCoord0.x; _out031.w = gl_MultiTexCoord0.y; _out041.y = 0.00000000E+00; _out041.z = 0.00000000E+00; gl_TexCoord[4] = _out041; gl_TexCoord[7] = _out071; gl_TexCoord[2] = _out021; gl_TexCoord[5] = _out051; gl_TexCoord[0] = _out001; gl_TexCoord[3] = _out031; gl_TexCoord[6] = _out061; gl_TexCoord[1] = _out011; gl_FrontColor = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); gl_Position = _r0059; } // main end  Getting default parameters for recv_v:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Replacing parameters... Replacing parameter names. replaced _proj1 with proj replaced _proj1[0] with proj[0] replaced _view1 with view replaced _view1[0] with view[0] replaced _world2 with world replaced _world2[0] with world[0] Getting default parameters for recv_v:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_v:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Cg output for recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F: // glslf output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslf -entry fp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=1 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=1 -DUSE_SPECULAR_MAP=1 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=0 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3),uniform sampler2D diffuse_map0 : register(s4),uniform sampler2D normal_map0 : register(s5),uniform sampler2D spec_map0 : register(s6), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, sampler2D diffuse_map0, sampler2D normal_map0, sampler2D spec_map0, -DEXTRA_MAP_ARGS=stipple_map, diffuse_map0, normal_map0, spec_map0, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS=diffuse_map0, -DNORMAL_MAPS=normal_map0, -DSPEC_MAPS=spec_map0, -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslf //program fp_main //semantic fp_main.stipple_map : TEXUNIT3 //semantic fp_main.diffuse_map0 : TEXUNIT4 //semantic fp_main.normal_map0 : TEXUNIT5 //semantic fp_main.spec_map0 : TEXUNIT6 //semantic fp_main.spec_diff_brightness0 //semantic fp_main.spec_diff_contrast0 //semantic fp_main.uv_animation0 //semantic fp_main.uv_scale0 //semantic fp_main.uv0 //semantic fp_main.surf_diffuse //semantic fp_main.surf_specular //semantic fp_main.surf_gloss //semantic fp_main.shadow_oblique_cutoff //semantic fp_main.custom_param //semantic fp_main.alpha_rej //semantic fp_main.time //semantic fp_main.texture_size //semantic fp_main.col1 //semantic fp_main.col2 //semantic fp_main.col3 //semantic fp_main.col4 //semantic fp_main.col_spec1 //semantic fp_main.col_spec2 //semantic fp_main.col_spec3 //semantic fp_main.col_spec4 //semantic fp_main.microflakes_mask //semantic fp_main.render_target_flipping //semantic fp_main.far_clip_distance //var sampler2D stipple_map : TEXUNIT3 : _stipple_map2 3 : 11 : 1 //var sampler2D diffuse_map0 : TEXUNIT4 : _diffuse_map02 4 : 12 : 1 //var sampler2D normal_map0 : TEXUNIT5 : _normal_map02 5 : 13 : 1 //var sampler2D spec_map0 : TEXUNIT6 : _spec_map02 6 : 14 : 1 //var float2 uv_animation0 : : _uv_animation02 : 17 : 1 //var float2 uv_scale0 : : _uv_scale02 : 18 : 1 //var float4 surf_diffuse : : _surf_diffuse2 : 20 : 1 //var float3 surf_specular : : _surf_specular2 : 21 : 1 //var float surf_gloss : : _surf_gloss2 : 22 : 1 //var float shadow_oblique_cutoff : : _shadow_oblique_cutoff2 : 23 : 1 //var float4 custom_param : : _custom_param1 : 24 : 1 //var float alpha_rej : : _alpha_rej2 : 25 : 1 //var float4 time : : _time2 : 26 : 1 //var float render_target_flipping : : _render_target_flipping3 : 37 : 1 //var float far_clip_distance : : _far_clip_distance1 : 38 : 1 //var float4 vert_colour : $vin.COLOR0 : COL0 : 0 : 1 //var float face : $vin.FACE : FACE : 1 : 1 //var float4 out00 : $vin.TEXCOORD0 : TEX0 : 2 : 1 //var float4 out01 : $vin.TEXCOORD1 : TEX1 : 3 : 1 //var float4 out02 : $vin.TEXCOORD2 : TEX2 : 4 : 1 //var float4 out03 : $vin.TEXCOORD3 : TEX3 : 5 : 1 //var float4 out04 : $vin.TEXCOORD4 : TEX4 : 6 : 1 //var float4 out05 : $vin.TEXCOORD5 : : 7 : 0 //var float4 out06 : $vin.TEXCOORD6 : : 8 : 0 //var float4 out07 : $vin.TEXCOORD7 : : 9 : 0 //var float2 wpos : $vin.WPOS : WPOS : 10 : 1 //var float4 pixel0 : $vout.COLOR0 : COL : 39 : 1 //var float4 pixel1 : $vout.COLOR1 : COL1 : 40 : 1 //var float4 pixel2 : $vout.COLOR2 : COL2 : 41 : 1 //var float4 pixel3 : $vout.COLOR3 : COL3 : 42 : 1 #extension GL_ARB_draw_buffers : enable #extension GL_EXT_gpu_shader4 : enable vec4 _pixel01; vec4 _pixel21; vec4 _pixel11; vec4 _pixel31; vec3 _TMP10; float _TMP16; float _TMP15; float _TMP14; vec3 _TMP9; float _face3; vec3 _TMP7; float _TMP6; float _TMP12; float _TMP1; float _TMP0; uniform sampler2D _stipple_map2; uniform sampler2D _diffuse_map02; uniform sampler2D _normal_map02; uniform sampler2D _spec_map02; uniform vec2 _uv_animation02; uniform vec2 _uv_scale02; uniform vec4 _surf_diffuse2; uniform vec3 _surf_specular2; uniform float _surf_gloss2; uniform float _shadow_oblique_cutoff2; uniform vec4 _custom_param1; uniform float _alpha_rej2; uniform vec4 _time2; uniform float _render_target_flipping3; uniform float _far_clip_distance1; vec2 _uv0068[1]; vec2 _uv_ddx0068[1]; vec2 _uv_ddy0068[1]; float _highest10068; float _max_contribution0068[1]; float _total10068; float _pixel_alpha0068; vec4 _diff_txl0068[1]; float _contribution0068[1]; float _total20068; vec3 _norm_txl10068[1]; vec4 _spec_txl10068[1]; vec3 _normal_ts0068; vec3 _normal_ws0068; vec3 _binormal_ws0068; vec3 _diff_colour0068; vec3 _spec_colour0068; int _x10068; int _y10068; float _b0076; vec4 _TMP79; vec4 _TMP89; vec4 _TMP95; float _val0104; vec3 _TMP107; vec3 _TMP117; float _v0128; vec2 _uv0128; vec4 _TMP129; vec2 _uv0130; vec3 _normal_ws0133; float _gloss0133; vec4 _texel00133; vec4 _texel10133; vec4 _texel20133; vec4 _texel30133; vec3 _TMP450133; float _v0135; vec3 _r0135; float _x0137; float _x0139; // main procedure, the original name was fp_main void main() { vec3 _normal_ws2; vec3 _tangent_ws1; vec2 _uv0_; float _cam_dist1; _face3 = float(gl_FrontFacing); _TMP0 = dot(gl_TexCoord[0].xyz, gl_TexCoord[0].xyz); _TMP1 = inversesqrt(_TMP0); _normal_ws2 = _TMP1*gl_TexCoord[0].xyz; _TMP0 = dot(gl_TexCoord[3].xyz, gl_TexCoord[3].xyz); _TMP1 = inversesqrt(_TMP0); _tangent_ws1 = _TMP1*gl_TexCoord[3].xyz; _uv0_ = vec2(gl_TexCoord[2].w, gl_TexCoord[3].w); _uv0068[0] = _uv0_*_uv_scale02; _uv0068[0] = _uv0068[0] + _time2.x*_uv_animation02; _uv_ddx0068[0] = dFdx(_uv0068[0]); _uv_ddy0068[0] = dFdy(_uv0068[0]); _highest10068 = max(0.00000000E+00, 1.00000000E+00); _b0076 = _highest10068 + (1.49804688E+00 - _highest10068); _max_contribution0068[0] = max(0.00000000E+00, _b0076); _total10068 = 1.00000000E+00/_max_contribution0068[0]; _max_contribution0068[0] = _max_contribution0068[0]*_total10068; _pixel_alpha0068 = gl_Color.w*_surf_diffuse2.w; if (false || _max_contribution0068[0] > 0.00000000E+00) { // if begin _TMP79 = texture2DGrad(_diffuse_map02, _uv0068[0], _uv_ddx0068[0], _uv_ddy0068[0]); _diff_txl0068[0] = _TMP79; } else { _diff_txl0068[0] = vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if _pixel_alpha0068 = _pixel_alpha0068*_diff_txl0068[0].w; if (_pixel_alpha0068 <= _alpha_rej2) { // if begin discard; } // end if _contribution0068[0] = max(0.00000000E+00, 1.00000000E+00); _total20068 = 1.00000000E+00/_contribution0068[0]; _contribution0068[0] = _contribution0068[0]*_total20068; if (_contribution0068[0] > 0.00000000E+00) { // if begin _diff_txl0068[0].xyz = _diff_txl0068[0].xyz*vec3(_contribution0068[0], _contribution0068[0], _contribution0068[0]); } else { _diff_txl0068[0].xyz = vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if if (false || _contribution0068[0] > 0.00000000E+00) { // if begin _TMP89 = texture2DGrad(_normal_map02, _uv0068[0], _uv_ddx0068[0], _uv_ddy0068[0]); _norm_txl10068[0] = _TMP89.xyz*vec3(_contribution0068[0], _contribution0068[0], _contribution0068[0]); } // end if if (false || _contribution0068[0] > 0.00000000E+00) { // if begin _TMP95 = texture2DGrad(_spec_map02, _uv0068[0], _uv_ddx0068[0], _uv_ddy0068[0]); _spec_txl10068[0] = _TMP95*vec4(_contribution0068[0], _contribution0068[0], _contribution0068[0], _contribution0068[0]); } // end if _normal_ts0068 = vec3( -2.00000000E+00, 2.00000000E+00, 2.00000000E+00)*(_norm_txl10068[0].xyz - 5.00000000E-01); _val0104 = float((_face3 > 0.00000000E+00)); _TMP12 = _val0104 - float((_face3 < 0.00000000E+00)); _TMP6 = --_render_target_flipping3*_TMP12; _normal_ws0068 = _normal_ws2*vec3(_TMP6, _TMP6, _TMP6); _TMP7 = _normal_ws0068.yzx*_tangent_ws1.zxy - _normal_ws0068.zxy*_tangent_ws1.yzx; _binormal_ws0068 = gl_TexCoord[4].x*_TMP7; _normal_ws0068 = _normal_ts0068.x*_tangent_ws1 + _normal_ts0068.y*_binormal_ws0068 + _normal_ts0068.z*_normal_ws0068; _TMP14 = pow(_diff_txl0068[0].x, 2.20000005E+00); _TMP15 = pow(_diff_txl0068[0].y, 2.20000005E+00); _TMP16 = pow(_diff_txl0068[0].z, 2.20000005E+00); _TMP107 = vec3(_TMP14, _TMP15, _TMP16); _TMP14 = pow(gl_Color.x, 2.20000005E+00); _TMP15 = pow(gl_Color.y, 2.20000005E+00); _TMP16 = pow(gl_Color.z, 2.20000005E+00); _TMP117 = vec3(_TMP14, _TMP15, _TMP16); _diff_colour0068 = _surf_diffuse2.xyz*_TMP107*_TMP117; _spec_colour0068 = _surf_specular2*_spec_txl10068[0].xyz; if (_custom_param1.x < 1.00000000E+00) { // if begin _x10068 = int(gl_FragCoord.x)%8; _y10068 = int(gl_FragCoord.y)%8; _v0128 = _custom_param1.x*1.60000000E+01; _uv0128 = vec2(float(_x10068), float(_y10068)); _uv0128.x = _uv0128.x + float((8.00000000E+00*float((int(_v0128)%4)))); _uv0128.y = _uv0128.y + float((8.00000000E+00*float(int((_v0128/4.00000000E+00))))); _uv0130 = _uv0128/3.20000000E+01; _TMP129 = texture2DGrad(_stipple_map2, _uv0130, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP129.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _cam_dist1 = gl_TexCoord[1].w/_far_clip_distance1; _normal_ws0133 = _normal_ws0068*vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 1.96078443E-03, 1.96078443E-03, 1.96078443E-03); _gloss0133 = _surf_gloss2/5.00000000E+01; _v0135 = _cam_dist1*1.67772150E+07; _x0137 = (_v0135/2.56000000E+02)/2.56000000E+02; _r0135.x = floor(_x0137); _x0139 = (_v0135 - _r0135.x*2.56000000E+02*2.56000000E+02)/2.56000000E+02; _r0135.y = floor(_x0139); _r0135.z = (_v0135 - _r0135.x*2.56000000E+02*2.56000000E+02) - _r0135.y*2.56000000E+02; _TMP9 = _r0135/2.55000000E+02; _texel00133 = vec4(_TMP9.x, _TMP9.y, _TMP9.z, _shadow_oblique_cutoff2); _texel10133 = vec4(_normal_ws0133.x, _normal_ws0133.y, _normal_ws0133.z, 0.00000000E+00); _TMP14 = pow(_diff_colour0068.x, 4.54545438E-01); _TMP15 = pow(_diff_colour0068.y, 4.54545438E-01); _TMP16 = pow(_diff_colour0068.z, 4.54545438E-01); _TMP10 = vec3(_TMP14, _TMP15, _TMP16); _texel20133 = vec4(_TMP10.x, _TMP10.y, _TMP10.z, 0.00000000E+00); _TMP450133 = _spec_colour0068/2.00000000E+00; _texel30133 = vec4(_TMP450133.x, _TMP450133.y, _TMP450133.z, _gloss0133); _pixel01 = _texel00133; _pixel11 = _texel10133; _pixel21 = _texel20133; _pixel31 = _texel30133; gl_FragData[3] = _texel30133; gl_FragData[1] = _texel10133; gl_FragData[2] = _texel20133; gl_FragData[0] = _texel00133; } // main end  Cleaned Cg output for recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F: #extension GL_ARB_draw_buffers : enable #extension GL_EXT_gpu_shader4 : enable vec4 _pixel01; vec4 _pixel21; vec4 _pixel11; vec4 _pixel31; vec3 _TMP10; float _TMP16; float _TMP15; float _TMP14; vec3 _TMP9; float _face3; vec3 _TMP7; float _TMP6; float _TMP12; float _TMP1; float _TMP0; uniform sampler2D _stipple_map2; uniform sampler2D _diffuse_map02; uniform sampler2D _normal_map02; uniform sampler2D _spec_map02; uniform vec2 _uv_animation02; uniform vec2 _uv_scale02; uniform vec4 _surf_diffuse2; uniform vec3 _surf_specular2; uniform float _surf_gloss2; uniform float _shadow_oblique_cutoff2; uniform vec4 _custom_param1; uniform float _alpha_rej2; uniform vec4 _time2; uniform float _render_target_flipping3; uniform float _far_clip_distance1; vec2 _uv0068[1]; vec2 _uv_ddx0068[1]; vec2 _uv_ddy0068[1]; float _highest10068; float _max_contribution0068[1]; float _total10068; float _pixel_alpha0068; vec4 _diff_txl0068[1]; float _contribution0068[1]; float _total20068; vec3 _norm_txl10068[1]; vec4 _spec_txl10068[1]; vec3 _normal_ts0068; vec3 _normal_ws0068; vec3 _binormal_ws0068; vec3 _diff_colour0068; vec3 _spec_colour0068; int _x10068; int _y10068; float _b0076; vec4 _TMP79; vec4 _TMP89; vec4 _TMP95; float _val0104; vec3 _TMP107; vec3 _TMP117; float _v0128; vec2 _uv0128; vec4 _TMP129; vec2 _uv0130; vec3 _normal_ws0133; float _gloss0133; vec4 _texel00133; vec4 _texel10133; vec4 _texel20133; vec4 _texel30133; vec3 _TMP450133; float _v0135; vec3 _r0135; float _x0137; float _x0139; // main procedure, the original name was fp_main void main() { vec3 _normal_ws2; vec3 _tangent_ws1; vec2 _uv0_; float _cam_dist1; _face3 = float(gl_FrontFacing); _TMP0 = dot(gl_TexCoord[0].xyz, gl_TexCoord[0].xyz); _TMP1 = inversesqrt(_TMP0); _normal_ws2 = _TMP1*gl_TexCoord[0].xyz; _TMP0 = dot(gl_TexCoord[3].xyz, gl_TexCoord[3].xyz); _TMP1 = inversesqrt(_TMP0); _tangent_ws1 = _TMP1*gl_TexCoord[3].xyz; _uv0_ = vec2(gl_TexCoord[2].w, gl_TexCoord[3].w); _uv0068[0] = _uv0_*_uv_scale02; _uv0068[0] = _uv0068[0] + _time2.x*_uv_animation02; _uv_ddx0068[0] = dFdx(_uv0068[0]); _uv_ddy0068[0] = dFdy(_uv0068[0]); _highest10068 = max(0.00000000E+00, 1.00000000E+00); _b0076 = _highest10068 + (1.49804688E+00 - _highest10068); _max_contribution0068[0] = max(0.00000000E+00, _b0076); _total10068 = 1.00000000E+00/_max_contribution0068[0]; _max_contribution0068[0] = _max_contribution0068[0]*_total10068; _pixel_alpha0068 = gl_Color.w*_surf_diffuse2.w; if (false || _max_contribution0068[0] > 0.00000000E+00) { // if begin _TMP79 = texture2DGrad(_diffuse_map02, _uv0068[0], _uv_ddx0068[0], _uv_ddy0068[0]); _diff_txl0068[0] = _TMP79; } else { _diff_txl0068[0] = vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if _pixel_alpha0068 = _pixel_alpha0068*_diff_txl0068[0].w; if (_pixel_alpha0068 <= _alpha_rej2) { // if begin discard; } // end if _contribution0068[0] = max(0.00000000E+00, 1.00000000E+00); _total20068 = 1.00000000E+00/_contribution0068[0]; _contribution0068[0] = _contribution0068[0]*_total20068; if (_contribution0068[0] > 0.00000000E+00) { // if begin _diff_txl0068[0].xyz = _diff_txl0068[0].xyz*vec3(_contribution0068[0], _contribution0068[0], _contribution0068[0]); } else { _diff_txl0068[0].xyz = vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00); } // end if if (false || _contribution0068[0] > 0.00000000E+00) { // if begin _TMP89 = texture2DGrad(_normal_map02, _uv0068[0], _uv_ddx0068[0], _uv_ddy0068[0]); _norm_txl10068[0] = _TMP89.xyz*vec3(_contribution0068[0], _contribution0068[0], _contribution0068[0]); } // end if if (false || _contribution0068[0] > 0.00000000E+00) { // if begin _TMP95 = texture2DGrad(_spec_map02, _uv0068[0], _uv_ddx0068[0], _uv_ddy0068[0]); _spec_txl10068[0] = _TMP95*vec4(_contribution0068[0], _contribution0068[0], _contribution0068[0], _contribution0068[0]); } // end if _normal_ts0068 = vec3( -2.00000000E+00, 2.00000000E+00, 2.00000000E+00)*(_norm_txl10068[0].xyz - 5.00000000E-01); _val0104 = float((_face3 > 0.00000000E+00)); _TMP12 = _val0104 - float((_face3 < 0.00000000E+00)); _TMP6 = --_render_target_flipping3*_TMP12; _normal_ws0068 = _normal_ws2*vec3(_TMP6, _TMP6, _TMP6); _TMP7 = _normal_ws0068.yzx*_tangent_ws1.zxy - _normal_ws0068.zxy*_tangent_ws1.yzx; _binormal_ws0068 = gl_TexCoord[4].x*_TMP7; _normal_ws0068 = _normal_ts0068.x*_tangent_ws1 + _normal_ts0068.y*_binormal_ws0068 + _normal_ts0068.z*_normal_ws0068; _TMP14 = pow(_diff_txl0068[0].x, 2.20000005E+00); _TMP15 = pow(_diff_txl0068[0].y, 2.20000005E+00); _TMP16 = pow(_diff_txl0068[0].z, 2.20000005E+00); _TMP107 = vec3(_TMP14, _TMP15, _TMP16); _TMP14 = pow(gl_Color.x, 2.20000005E+00); _TMP15 = pow(gl_Color.y, 2.20000005E+00); _TMP16 = pow(gl_Color.z, 2.20000005E+00); _TMP117 = vec3(_TMP14, _TMP15, _TMP16); _diff_colour0068 = _surf_diffuse2.xyz*_TMP107*_TMP117; _spec_colour0068 = _surf_specular2*_spec_txl10068[0].xyz; if (_custom_param1.x < 1.00000000E+00) { // if begin _x10068 = int(gl_FragCoord.x)%8; _y10068 = int(gl_FragCoord.y)%8; _v0128 = _custom_param1.x*1.60000000E+01; _uv0128 = vec2(float(_x10068), float(_y10068)); _uv0128.x = _uv0128.x + float((8.00000000E+00*float((int(_v0128)%4)))); _uv0128.y = _uv0128.y + float((8.00000000E+00*float(int((_v0128/4.00000000E+00))))); _uv0130 = _uv0128/3.20000000E+01; _TMP129 = texture2DGrad(_stipple_map2, _uv0130, vec2( 0.00000000E+00, 0.00000000E+00), vec2( 0.00000000E+00, 0.00000000E+00)); if (_TMP129.x < 5.00000000E-01) { // if begin discard; } // end if } // end if _cam_dist1 = gl_TexCoord[1].w/_far_clip_distance1; _normal_ws0133 = _normal_ws0068*vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01) + vec3( 1.96078443E-03, 1.96078443E-03, 1.96078443E-03); _gloss0133 = _surf_gloss2/5.00000000E+01; _v0135 = _cam_dist1*1.67772150E+07; _x0137 = (_v0135/2.56000000E+02)/2.56000000E+02; _r0135.x = floor(_x0137); _x0139 = (_v0135 - _r0135.x*2.56000000E+02*2.56000000E+02)/2.56000000E+02; _r0135.y = floor(_x0139); _r0135.z = (_v0135 - _r0135.x*2.56000000E+02*2.56000000E+02) - _r0135.y*2.56000000E+02; _TMP9 = _r0135/2.55000000E+02; _texel00133 = vec4(_TMP9.x, _TMP9.y, _TMP9.z, _shadow_oblique_cutoff2); _texel10133 = vec4(_normal_ws0133.x, _normal_ws0133.y, _normal_ws0133.z, 0.00000000E+00); _TMP14 = pow(_diff_colour0068.x, 4.54545438E-01); _TMP15 = pow(_diff_colour0068.y, 4.54545438E-01); _TMP16 = pow(_diff_colour0068.z, 4.54545438E-01); _TMP10 = vec3(_TMP14, _TMP15, _TMP16); _texel20133 = vec4(_TMP10.x, _TMP10.y, _TMP10.z, 0.00000000E+00); _TMP450133 = _spec_colour0068/2.00000000E+00; _texel30133 = vec4(_TMP450133.x, _TMP450133.y, _TMP450133.z, _gloss0133); _pixel01 = _texel00133; _pixel11 = _texel10133; _pixel21 = _texel20133; _pixel31 = _texel30133; gl_FragData[3] = _texel30133; gl_FragData[1] = _texel10133; gl_FragData[2] = _texel20133; gl_FragData[0] = _texel00133; } // main end  Getting default parameters for recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Replacing parameters... Replacing parameter names. replaced _alpha_rej2 with alpha_rej replaced _alpha_rej2[0] with alpha_rej[0] replaced _custom_param1 with custom_param replaced _custom_param1[0] with custom_param[0] replaced _diffuse_map02 with diffuse_map0 replaced _diffuse_map02[0] with diffuse_map0[0] replaced _far_clip_distance1 with far_clip_distance replaced _far_clip_distance1[0] with far_clip_distance[0] replaced _normal_map02 with normal_map0 replaced _normal_map02[0] with normal_map0[0] replaced _render_target_flipping3 with render_target_flipping replaced _render_target_flipping3[0] with render_target_flipping[0] replaced _shadow_oblique_cutoff2 with shadow_oblique_cutoff replaced _shadow_oblique_cutoff2[0] with shadow_oblique_cutoff[0] replaced _spec_map02 with spec_map0 replaced _spec_map02[0] with spec_map0[0] replaced _stipple_map2 with stipple_map replaced _stipple_map2[0] with stipple_map[0] replaced _surf_diffuse2 with surf_diffuse replaced _surf_diffuse2[0] with surf_diffuse[0] replaced _surf_gloss2 with surf_gloss replaced _surf_gloss2[0] with surf_gloss[0] replaced _surf_specular2 with surf_specular replaced _surf_specular2[0] with surf_specular[0] replaced _time2 with time replaced _time2[0] with time[0] replaced _uv_animation02 with uv_animation0 replaced _uv_animation02[0] with uv_animation0[0] replaced _uv_scale02 with uv_scale0 replaced _uv_scale02[0] with uv_scale0[0] Getting default parameters for recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Getting default parameters for recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Delegating... Requested GpuProgramParameters for recv_f:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Requested GpuProgramParameters for recv_v:D_p_N_S_t_c_1_o_T_0_0_g_w_R_m_F Compiling shader: recv_v:D_p_N_S_t_c_1_o_T_0_0_g_W_R_m_F recv_f:D_p_N_S_t_c_1_o_T_0_0_g_W_R_m_F 0 Cg output for recv_v:D_p_N_S_t_c_1_o_T_0_0_g_W_R_m_F: // glslv output by Cg compiler // cgc version 3.0.0016, build date Feb 10 2011 // command line args: -q -profile glslv -entry vp_main -O3 -DUSE_VERTEX_COLOURS=0 -DUSE_DIFFUSE_MAP=1 -DPREMULTIPLIED_ALPHA=0 -DUSE_NORMAL_MAP=1 -DUSE_SPECULAR_MAP=1 -DUSE_SPECULAR_FROM_DIFFUSE=0 -DUSE_SPECULAR_FROM_DIFFUSE_ALPHA=0 -DUSE_GLOSS_FROM_SPECULAR_ALPHA=0 -DUSE_TRANSLUCENCY_MAP=0 -DUSE_PAINT_MAP=0 -DUSE_PAINT_COLOUR=0 -DUSE_PAINT_MASK=0 -DUSE_PAINT_ALPHA=0 -DUSE_MICROFLAKES=0 -DUSE_STIPPLE_TEXTURE=1 -DUSE_OVERLAY_OFFSET=0 -DBLEND=1 -DBLENDED_BONES=0 -DFLIP_BACKFACE_NORMALS=1 -DWORLD_GEOMETRY=1 -DSHADING_MODEL=0 -DRECEIVE_SHADOWS=1 -DUSE_FOG=1 -DNO_TEXTURE_LOOKUPS=0 -DUSE_HEIGHTMAP_BLENDING=1 -DGAMMA_CORRECTION_IN=2.2 -DGAMMA_CORRECTION_OUT=2.2 -DUSE_REVERSE_SPECULAR=1 -DMAX_LIGHT_RANGE=1 -DSHADOW_PADDING=4 -DSHADOW_DIST1=14 -DSHADOW_DIST2=30 -DSHADOW_DIST3=500 -DSHADOW_FADE_START=500 -DSHADOW_FADE_END=500 -DSHADOW_RES=2048 -DEMULATE_PCF=0 -DSHADOW_FILTER_TAPS=16 -DSHADOW_FILTER_NOISE=0 -DSHADOW_FILTER_DITHER=1 -DSPREAD1=8 -DSPREAD2=8 -DSPREAD3=2.24 -DEXTRA_MAPS=uniform sampler2D stipple_map : register(s3),uniform sampler2D diffuse_map0 : register(s4),uniform sampler2D normal_map0 : register(s5),uniform sampler2D spec_map0 : register(s6), -DEXTRA_MAPS_AGAIN=sampler2D stipple_map, sampler2D diffuse_map0, sampler2D normal_map0, sampler2D spec_map0, -DEXTRA_MAP_ARGS=stipple_map, diffuse_map0, normal_map0, spec_map0, -DBLEND_UNIFORMS=uniform float spec_diff_brightness0,uniform float spec_diff_contrast0,uniform float2 uv_animation0,uniform float2 uv_scale0,uniform float2 uv0, -DDIFFUSE_MAPS=diffuse_map0, -DNORMAL_MAPS=normal_map0, -DSPEC_MAPS=spec_map0, -DTRAN_MAPS= -DBLEND_UNIFORM_ARGS=spec_diff_brightness0, spec_diff_contrast0, uv_animation0, uv_scale0, uv0_, -DUVS=uv0, -DUV_SCALES=uv_scale0, -DUV_ANIMATIONS=uv_animation0, -DSPEC_DIFF_CONTRASTS=spec_diff_contrast0, -DSPEC_DIFF_BRIGHTNESSES=spec_diff_brightness0, -DFORWARD_PART=1 -DDEFERRED_AMBIENT_SUN_PART=0 -DDEFERRED_LIGHTS_PART=0 //vendor NVIDIA Corporation //version 3.0.0.16 //profile glslv //program vp_main //semantic vp_main.bone_matrixes //semantic vp_main.world //semantic vp_main.view //semantic vp_main.proj //semantic vp_main.camera_pos_ws //var float4x4 view : : _view1[0], 4 : 7 : 1 //var float4x4 proj : : _proj1[0], 4 : 8 : 1 //var float3 pos_os : $vin.POSITION : ATTR0 : 0 : 1 //var float3 normal_os : $vin.NORMAL : ATTR2 : 1 : 1 //var float4 tangent_with_parity : $vin.TANGENT : $TANGENT : 2 : 1 //var float2 uv0 : $vin.TEXCOORD0 : ATTR8 : 3 : 1 //var float visibility : $vin.TEXCOORD1 : ATTR9 : 4 : 1 //var float4 out00 : $vout.TEXCOORD0 : TEX0 : 10 : 1 //var float4 out01 : $vout.TEXCOORD1 : TEX1 : 11 : 1 //var float4 out02 : $vout.TEXCOORD2 : TEX2 : 12 : 1 //var float4 out03 : $vout.TEXCOORD3 : TEX3 : 13 : 1 //var float4 out04 : $vout.TEXCOORD4 : TEX4 : 14 : 1 //var float4 out05 : $vout.TEXCOORD5 : TEX5 : 15 : 1 //var float4 out06 : $vout.TEXCOORD6 : TEX6 : 16 : 1 //var float4 out07 : $vout.TEXCOORD7 : TEX7 : 17 : 1 //var float4 for_rasteriser : $vout.POSITION : HPOS : 18 : 1 //var float4 vert_colour : $vout.COLOR0 : COL0 : 19 : 1 vec4 _for_rasteriser1; vec4 _vert_colour1; vec4 _out011; vec4 _out061; vec4 _out031; vec4 _out001; vec4 _out051; vec4 _out021; vec4 _out071; vec4 _out041; uniform vec4 _view1[4]; uniform vec4 _proj1[4]; vec4 _r0013; vec4 _v0013; vec4 _r0023; vec4 _v0023; attribute vec4 TANGENT; // main procedure, the original name was vp_main void main() { _vert_colour1 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00); _v0013 = vec4(gl_Vertex.x, gl_Vertex.y, gl_Vertex.z, 1.00000000E+00); _r0013.x = dot(_view1[0], _v0013); _r0013.y = dot(_view1[1], _v0013); _r0013.z = dot(_view1[2], _v0013); _v0023 = vec4(_r0013.x, _r0013.y, _r0013.z, 1.00000000E+00); _r0023.x = dot(_proj1[0], _v0023); _r0023.y = dot(_proj1[1], _v0023); _r0023.z = dot(_proj1[2], _v0023); _r0023.w = dot(_proj1[3], _v0023); _for_rasteriser1 = _r0023; _out001.xyz = gl_Normal; _out031.xyz = TANGENT.xyz; _out041.x = TANGENT.w; _out011.w = -_r0013.z; _out021.w = gl_MultiTexCoord0.x; _out031.w = gl_MultiTexCoord0.y; _out041.y = 0.0000