Team Ai
Datasetpublic

AVSim/simulation-package

Simulation runtime: the third-party half of the AVSim data generation package This repository holds the third-party runtime of the Simulation data generation package, version 3: the pieces the pipeline needs that were not written by the authors. It contains no code and no data of the authors. It is not usable on its own: the private half of the package, AVSim/simulation, downloads this repository into the same directory at a pinned revision with its fetch_runtime.sh script and… See the full description on the dataset page: https://huggingface.co/datasets/AVSim/simulation-package.

sourceHugging Faceotherupdated 29d agoView on Hugging Face
0likes3.7kdownloads
Glass_Optical.mdl1587 linesDownload Raw Back to Glass
1/******************************************************************************2 *	 Copyright 2024 NVIDIA Corporation. All rights reserved.	 *3 ******************************************************************************4 5Permission is hereby granted by NVIDIA Corporation ("NVIDIA"), free of charge,6to any person obtaining a copy of the sample definition code that uses our 7Material Definition Language (the "MDL Materials"), to reproduce and distribute8the MDL Materials, including without limitation the rights to use, copy, merge,9publish, distribute, and sell modified and unmodified copies of the MDL 10Materials, and to permit persons to whom the MDL Materials is furnished to do11so, in all cases solely for use with NVIDIA's Material Definition Language,12subject to the following further conditions:13 141. The above copyright notices, this list of conditions, and the disclaimer15that follows shall be retained in all copies of one or more of the MDL16Materials, including in any software with which the MDL Materials are bundled,17redistributed, and/or sold, and included either as stand-alone text files,18human-readable headers or in the appropriate machine-readable metadata fields19within text or binary files as long as those fields can be easily viewed by the20user, as applicable.212. The name of NVIDIA shall not be used to promote, endorse or advertise any 22Modified Version without specific prior written permission, except a) to comply23 with the notice requirements otherwise contained herein; or b) to acknowledge24the contribution(s) of NVIDIA.25 26THE MDL MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS27OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY,28FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT,29TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL NVIDIA CORPORATION BE LIABLE FOR 30ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, 31INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF 32CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE33THE MDL MATERIALS OR FROM OTHER DEALINGS IN THE MDL MATERIALS.34*/35 36 37mdl 1.5;38 39import ::anno::*;40import ::base::*;41import ::df::*;42import ::math::*;43import ::state::*;44import ::tex::*;45import ::nvidia::core_definitions::blend_colors;46import ::nvidia::core_definitions::dimension;47 48 49const string COPYRIGHT = 50" Copyright 2024 NVIDIA Corporation. All rights reserved.\n"51" MDL MATERIALS ARE PROVIDED PURSUANT TO AN END USER LICENSE  AGREEMENT,\n"52" WHICH WAS ACCEPTED IN ORDER TO GAIN ACCESS TO THIS FILE.  IN PARTICULAR,\n" 53" THE MDL MATERIALS ARE PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n"54" EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF\n"55" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF\n" 56" COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL NVIDIA\n"57" CORPORATION BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY\n"58" GENERAL, SPECIAL,  INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN\n"59" AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR\n"60" INABILITY TO USE THE MDL MATERIALS OR FROM OTHER DEALINGS IN THE MDL MATERIALS.\n";61 62const string DESCRIPTION = "Versatile glass material with features such as ceramic frit, coating, dirt and smudges.";63 64 65export enum unit_scale66[[67	::anno::hidden()68]]69{70	unit_mm = 1,71	unit_cm = 2,72	unit_m = 373};74 75struct volume_info76[[77	::anno::hidden()78]]{79	color absorption_coefficient;80	color scattering_coefficient;81};82 83 84 85// simplified volume coefficients86// This function takes a transmittance value and and albedo and translates it into meaningful87// scattering and volume coefficients that are userfriendly88//89volume_info volume_transmittance_albedo(90	uniform float density_scale = 1.0,91	uniform color transmittance = color(0.5f), // transmittance color after unit distance92	uniform color albedo = color(1.0f)93)94{95	color sigma_t = -::math::log(::math::saturate(transmittance)) * density_scale;96	color sigma_s = sigma_t * ::math::saturate(albedo);97	return volume_info(98		scattering_coefficient: sigma_s,99		absorption_coefficient: sigma_t - sigma_s);100}101 102// This function calculates the apropriate scattering and volume coefficients103// for a material of a given thickness. 104// The user specifies the thickness of the material, e.g. 3mm and the amount 105// of light passing through. The rest is automatically calculated for the material106// and the material_volume is returned.107volume_info custom_volume_transmittance(108	uniform unit_scale unit_scale_select = unit_mm,109	uniform float absorption_thickness = 3.0f,110	uniform color transmittance = color(0.5f),111	uniform color albedo = color(0.0f)112)113{114	absorption_thickness = (absorption_thickness <= 0.0f) ? 0.00001 : absorption_thickness;115	float scalefactor;116	switch(unit_scale_select){117		case unit_mm: scalefactor = 0.001f; break;118		case unit_cm: scalefactor = 0.01f; break;119		case unit_m: scalefactor = 1.0f; break;120		default: scalefactor = 1.0f;121	}122	123	124	125	volume_info vol_coefficients = volume_transmittance_albedo(126												density_scale: 1.0f/(absorption_thickness * scalefactor),127												transmittance: transmittance,128												albedo: albedo129	);130	131	return vol_coefficients;132}133 134 135float3 srgb2rgb(float3 val)136{137	return ::math::pow(::math::max(val, float3(0.0f)), 2.2);138}139 140 141float uint2float(int x)142{143	return float(x & 0x7FFFFFFF) + (x < 0 ? 2147483648.0 : 0.0);144}145 146int lowbias32(int x)147{148	x ^= x >>> 16;149	x *= 0x7feb352d;150	x ^= x >>> 15;151	x *= 0x846ca68b;152	x ^= x >>> 16;153	return x;154}155 156float2 rnd22(int2 p) {157	float2 ret_val = float2(158		uint2float(lowbias32(p[0] + lowbias32(p[1]))) / 4294967296.f,159		uint2float(lowbias32(p[0] + 32000 + lowbias32(p[1]))) / 4294967296.f160	);161	return ret_val;162}   163 164 165::base::texture_coordinate_info transform_coordinate_2(166	float4x4 transform										 167		[[ ::anno::description("A transformation to be applied to the source coordinates. rotation_translation_scale() is a suggested means to compute the transformation matrix.") ]],168	::base::texture_coordinate_info coordinate = ::base::texture_coordinate_info()169		[[ ::anno::description("Coordinate, typically sourced from coordinate_source or coordinate_projection.") ]]170) [[ 171	::anno::description("Transform a texture coordinate by a matrix.") ,172	::anno::noinline()173  ]]174{175	float4 r_position = float4(coordinate.position.x,coordinate.position.y,coordinate.position.z,1)* transform;176	float4 r_tangent_u = float4(coordinate.tangent_u.x,coordinate.tangent_u.y,coordinate.tangent_u.z,1)* transform;177	float4 r_tangent_v = float4(coordinate.tangent_v.x,coordinate.tangent_v.y,coordinate.tangent_v.z,1)* transform;178	return ::base::texture_coordinate_info(179		float3(r_position.x,r_position.y,r_position.z),180		float3(r_tangent_u.x,r_tangent_u.y,r_tangent_u.z), // orthogonalization181		float3(r_tangent_v.x,r_tangent_v.y,r_tangent_v.z));// orthogonalization182}183 184 185// Takes the standard input that every material has. It combines a couple of186// functions in one convenience function.187::base::texture_coordinate_info vmat_transform(188								float2 translation = float2(0.0, 0.0),189								float rotation	 = 0.0,				// rotation in degrees190								float2 scaling	 = float2(1.0, 1.0),191								uniform ::base::texture_coordinate_system system = ::base::texture_coordinate_uvw,192								uniform int uv_space	   = 0193)194{195	float rotation_rad = (rotation * 3.1415926535897932384626433832f) / 180.f;196	float4x4 scale =197	float4x4(1.0 /scaling.x, 0.			 ,  0. ,	 0.,198			 0.			, 1.0 /scaling.y ,  0. ,	 0.,199			 0.			, 0.			 ,  1.0,	 0.,200			 translation.x , translation.y  ,  0.0,	 1.);201 202	float s = ::math::sin(rotation_rad);203	float c = ::math::cos(rotation_rad);204	float4x4 rotate =205	float4x4(  c  ,  -s   , 0.0 , 0.0,206			   s  ,   c   , 0.0 , 0.0,207			   0.0,   0.0 , 1.0 , 0.0,208			   0. ,   0.0 , 0.0 , 1.);209	210	return transform_coordinate_2(scale*rotate, ::base::coordinate_source(system, uv_space));211}212 213float2x2 invert_2x2(float2x2 M)214{215	float det = M[0][0]*M[1][1] - M[0][1]*M[1][0];216	//https://www.chilimath.com/lessons/advanced-algebra/inverse-of-a-2x2-matrix/217	return (1.0 / det) * float2x2(M[1][1], -M[0][1], -M[1][0], M[0][0]);218}219 220float3 nonrepeat_lookup(221	uniform texture_2d texture = texture_2d(),222	::base::texture_coordinate_info uvw = ::base::coordinate_source(),223	float texture_scale = 1.0,224	float3 average_color = float3(0.5),225	float patch_size = 8.0226)227{228	229	float2 uv_in = float2(uvw.position[0], uvw.position[1]) * texture_scale;230	float Z =  patch_size;	 // patch scale inside example texture231	float CON = 1.0f;232	233	float3 O = float3(0.f);234	float2x2 M0 = float2x2(1.f,0.f, 0.5f, ::math::sqrt(3.f)/2.f);235	float2x2 M = invert_2x2(M0); // transform matrix <-> tilted space236	237	float2 U = uv_in;238	float2 V = M * uv_in; //pre-tilted hexa coordinates239	int2 I = int2(::math::floor(V)); // hexa-tile id240	241	// The mean color needs to be determined in Photoshop then to make the242	// average color work out, take the float value and calculate the apropriate243	// mean value as (value^(1/2.2))244 245	float3 m = average_color;246	247	float3 F = float3(::math::frac(V)[0], ::math::frac(V)[1], 0.f), W;248	F[2] = 1.0 - F[0] - F[1]; // local hexa coordinates249	250	if( F[2] > 0.f )251 252		O = (W[0] = F[2]) * (( ::tex::lookup_float3(texture, U/Z-rnd22(I))) - m*float(CON))253		  + (W[1] = F[1]) * (( ::tex::lookup_float3(texture, U/Z-rnd22(I+int2(0,1)))) - m*float(CON))254		  + (W[2] = F[0]) * (( ::tex::lookup_float3(texture, U/Z-rnd22(I+int2(1,0)))) - m*float(CON));255	else256		O = (W[0] =	  -F[2]) * (( ::tex::lookup_float3(texture, U/Z-rnd22(I+int2(1))))   - m*float(CON))257		  + (W[1] = 1.f - F[1]) * (( ::tex::lookup_float3(texture, U/Z-rnd22(I+int2(1, 0)))) - m*float(CON))258		  + (W[2] = 1.f - F[0]) * (( ::tex::lookup_float3(texture, U/Z-rnd22(I+int2(0, 1)))) - m*float(CON));259	O = m + O/::math::length(W);260	O = ::math::clamp( (O), 0.0, 1.0);261	262	return float3(O);263}264 265 266float remap_xy_to_0_1(float input, float x, float y)267{268	return (input - x)/(y - x);269}270 271float histogram_scan_big(float input, float width, float position)272{273	return ::math::clamp(274				remap_xy_to_0_1(input,275					::math::lerp(-width, 1.0, position),276					::math::lerp(0.0, 1.0 + width, position)),277				0.0,278				1.0);279}280 281color endless_texture(282	uniform texture_2d texture = texture_2d(),283	::base::texture_coordinate_info uvw = ::base::coordinate_source(),284	float texture_scale = 10.0,285	float3 average_color = float3(0.5, 0.5, 1.0),286	float patch_size = 8.0,287	bool gamma_correct_lookup = true288)289{290	return gamma_correct_lookup ? color(srgb2rgb(291			nonrepeat_lookup (292				texture: texture,293				uvw: uvw,294				texture_scale: texture_scale,295				average_color: average_color,296				patch_size: patch_size297			))298		) : color(nonrepeat_lookup (299			texture: texture,300			uvw: uvw,301			texture_scale: texture_scale,302			average_color: average_color,303			patch_size: patch_size304		));305}306 307 308 309 310// 5.1311 312// Glass_V1313 314export material Glass_Optical(315// Appearance316	uniform bool infinite_tiling = false [[317		::anno::description("Enables infinite tiling feature which removes repeating texture patterns. Note that depending on the material this feature changes the appearance of the material slightly."),318		::anno::display_name("Infinite Tiling"),319		::anno::in_group("Appearance")320	]],321	uniform bool thin_walled = false [[322		::anno::description("Makes the material thin-walled. This changes the behavior of the material in a way that light attenuation is not calculated volumetrically as light travels through the geometry but at the light surface level. Thin walled geometry mustbe modeled as a single sheet without any volume."),323		::anno::display_name("Thin Walled"),324		::anno::in_group("Appearance")325	]],326	uniform float ior = 1.55447f [[327		::anno::description("Index of refraction."),328		::anno::display_name("IOR"),329		::anno::in_group("Appearance"),330		::anno::soft_range(0.f, 0.f),331		::anno::hard_range(0.f, 20.f)332	]],333	uniform float abbe_number = 63.23f [[334		::anno::description("Dispersion in relation to index of refraction."),335		::anno::display_name("Abbe Number"),336		::anno::in_group("Appearance"),337		::anno::soft_range(0.f, 100.f)338	]],339	float roughness = 0.f [[340		::anno::description("Creates a frosted look of the glass."),341		::anno::display_name("Roughness"),342		::anno::in_group("Appearance"),343		::anno::hard_range(0.f, 1.f)344	]],345	uniform unit_scale units_absorption_thickness = unit_cm [[346		::anno::description("Chooses the units that are used for setting the absorption thickness. Can be meters, centimeters or millimeters."),347		::anno::display_name("Units Absorption Thickness"),348		::anno::enable_if("thin_walled == false"),349		::anno::in_group("Appearance")350	]],351	uniform float absorption_thickness = 1.f [[352		::anno::description("The thickness for which the transmittance (color) is set. Example: If thickness is set to 3mm and transmittance to 0.8, then 80% of the light will pass through a 3mm thick material."),353		::anno::display_name("Absorption Thickness"),354		::anno::enable_if("thin_walled == false"),355		::anno::in_group("Appearance"),356		::anno::soft_range(0.f, 10.f)357	]],358	uniform color transmittance = color(1.0f) [[359		::anno::description("The transmittance sets the amount of light that is left after light has travelled through a given material thickness which can be set with the parameter \"absorption thickness\". The transmittance can be set for RGB components separately to achieve a tinted appearance of the material."),360		::anno::display_name("Transmittance"),361		::anno::in_group("Appearance")362	]],363 364 365 366// Coating367	float coating_reflectivity = 0.0f [[368		::anno::description("Adjusts the reflectivity of the coating - the amount of light that gets reflected before it transfers through the glass surface."),369		::anno::display_name("Coating Reflectivity"),370		::anno::in_group("Appearance", "Coating"),371		::anno::hard_range(0.f, 1.f)372	]],373	color coating_tint = color(1.f, 1.f, 1.f) [[374		::anno::display_name("Coating Tint"),375		::anno::description("Adds a color to the coating layer."),376		::anno::enable_if("coating_reflectivity > 0.0"),377		::anno::in_group("Appearance", "Coating")378	]],379	380// Frit381	uniform float frit_weight = 0.0f [[382		::anno::description("Controls the weight of the frit layer."),383		::anno::display_name("Frit Layer Weight"),384		::anno::in_group("Appearance", "Frit"),385		::anno::hard_range(0.f, 1.f)386	]],387	color frit_color = color(0.5f) [[388		::anno::display_name("Frit Color"),389		::anno::enable_if("frit_weight > 0.0"),390		::anno::in_group("Appearance", "Frit")391	]],	392	float frit_size = 0.4f [[393		::anno::description("Controls the size of the frit circles."),394		::anno::display_name("Frit Size"),395		::anno::enable_if("frit_weight > 0.0"),396		::anno::in_group("Appearance", "Frit"),397		::anno::hard_range(0.f, 1.f)398	]],399	float frit_roughness = 0.286f [[400		::anno::description("Controls the roughness of the frit layer."),401		::anno::display_name("Frit Roughness"),402		::anno::enable_if("frit_weight > 0.0"),403		::anno::in_group("Appearance", "Frit"),404		::anno::hard_range(0.f, 1.f)405	]],406	float2 frit_scale = float2(1.f) [[407		::anno::description("Larger numbers increase the size."),408		::anno::display_name("Frit Scale"),409		::anno::enable_if("frit_weight > 0.0"),410		::anno::in_group("Appearance", "Frit"),411		::anno::soft_range(float2(0.f), float2(2.f))412	]],413	float reflection_transmission_balance = 0.f [[414		::anno::description("Makes the frit translucent."),415		::anno::display_name("Frit Translucency"),416		::anno::enable_if("frit_weight > 0.0"),417		::anno::in_group("Appearance", "Frit"),418		::anno::hard_range(0.f, 1.f)419	]],420	421// Dirt422	uniform float dirt_layer_weight = 0.0f [[423		::anno::description("Controls the visibility of the dirt layer."),424		::anno::display_name("Dirt Layer Weight"),425		::anno::in_group("Appearance", "Dirt"),426		::anno::hard_range(0.f, 1.f)427	]],428	float dirt_brightness = 0.75f [[429		::anno::description("Sets the brightness of the dirt."),430		::anno::display_name("Dirt Brightness"),431		::anno::enable_if("dirt_layer_weight > 0.0"),432		::anno::in_group("Appearance", "Dirt"),433		::anno::hard_range(0.f, 1.f)434	]],435	float dirt_weight_1 = 0.9f [[436		::anno::description("Dirty dried droplets."),437		::anno::display_name("Dirt 1 Amount"),438		::anno::enable_if("dirt_layer_weight > 0.0"),439		::anno::in_group("Appearance", "Dirt"),440		::anno::hard_range(0.f, 1.f)441	]],442	float dirt_weight_2 = 0.3f [[443		::anno::description("Dirt with the appearance of a dust layer."),444		::anno::display_name("Dirt 2 Amount"),445		::anno::enable_if("dirt_layer_weight > 0.0"),446		::anno::in_group("Appearance", "Dirt"),447		::anno::hard_range(0.f, 1.f)448	]],449	float dirt_weight_3 = 0.f [[450		::anno::description("Dirt which shows some driet water flow stains."),451		::anno::display_name("Dirt 3 Amount"),452		::anno::enable_if("dirt_layer_weight > 0.0"),453		::anno::in_group("Appearance", "Dirt"),454		::anno::hard_range(0.f, 1.f)455	]],456	float dirt_balance = 0.374f [[457		::anno::description("Controls the balance of the dirt textures. A low value makes the dirt more visible, higher values make it less visible while maintaining its contours."),458		::anno::display_name("Dirt Balance"),459		::anno::enable_if("dirt_layer_weight > 0.0"),460		::anno::in_group("Appearance", "Dirt"),461		::anno::hard_range(0.f, 1.f)462	]],463	float2 dirt_scale = float2(1.f) [[464		::anno::description("Larger numbers increase the size."),465		::anno::display_name("Dirt Scale"),466		::anno::enable_if("dirt_layer_weight > 0.0"),467		::anno::in_group("Appearance", "Dirt"),468		::anno::soft_range(float2(0.f), float2(2.f))469	]],470 471// Smudges472	uniform float smudges_weight = 0.0f [[473		::anno::description("Controls the visibility of the smudge layer."),474		::anno::display_name("Smudge Layer Weight"),475		::anno::in_group("Appearance", "Smudges"),476		::anno::hard_range(0.f, 1.f)477	]],478	float smudges_1_weight = 0.95f [[479		::anno::description("Adjusts the weight of the primary smudges."),480		::anno::display_name("Smudges 1 Weight"),481		::anno::enable_if("smudges_weight > 0.0"),482		::anno::in_group("Appearance", "Smudges"),483		::anno::hard_range(0.f, 1.f)484	]],485	float smudges_2_weight = 0.3f [[486		::anno::description("Adjusts the weight of the secondary smudges."),487		::anno::display_name("Smudges 2 Weight"),488		::anno::enable_if("smudges_weight > 0.0"),489		::anno::in_group("Appearance", "Smudges"),490		::anno::hard_range(0.f, 1.f)491	]],492	float smudge_balance = 0.2f [[493		::anno::description("Balances the coverage of the smudges. A low value makes them more visible, higher make leave only stronger smudges visible."),494		::anno::display_name("Smudge Balance"),495		::anno::enable_if("smudges_weight > 0.0"),496		::anno::in_group("Appearance", "Smudges"),497		::anno::hard_range(0.f, 1.f)498	]],499	float2 smudge_scale = float2(1.f) [[500		::anno::description("Larger numbers increase the size."),501		::anno::display_name("Smudge Scale"),502		::anno::enable_if("smudges_weight > 0.0"),503		::anno::in_group("Appearance", "Smudges"),504		::anno::soft_range(float2(0.f), float2(2.f))505	]],506	507	508//Transform509	float2 texture_translate = float2(0.f) [[510		::anno::description("Controls the position of the texture."),511		::anno::display_name("Texture Translate"),512		::anno::in_group("Transform")513	]],514	float texture_rotate = 0.f [[515		::anno::description("Rotates angle of the texture in degrees."),516		::anno::display_name("Texture Rotate"),517		::anno::in_group("Transform"),518		::anno::soft_range(0.f, 360.f)519	]],520	float2 texture_scale = float2(1.f) [[521		::anno::description("Larger numbers increase the size."),522		::anno::display_name("Texture Scale"),523		::anno::in_group("Transform"),524		::anno::soft_range(float2(0.f), float2(2.f)),525		::nvidia::core_definitions::dimension(float2(1.0f, 1.0f))526	]],527	528 529// Advanced530	uniform int uv_space_index = 0 [[531		::anno::description("uses the selected UV space index."),532		::anno::display_name("UV Space Index"),533		::anno::in_group("Advanced"),534		::anno::soft_range(0, 4)535	]],536	float3 normal = ::state::normal() [[537		::anno::description("Override this input to provide a custom normal for the material."),538		::anno::display_name("Normal"),539		::anno::in_group("Advanced")540	]]541)542[[543	::anno::author("NVIDIA vMaterials"),544    ::anno::display_name("Glass Clear - Master Material"),545    ::anno::description("Master template material. This material should be hidden. "546						"If you see this material, the integration is not hiding it correctly."),547	::anno::copyright_notice(COPYRIGHT),548	::anno::thumbnail("./.thumbs/Glass_Optical.Glass_Optical.png"),549	::anno::key_words(string[]("glass", "master", "layered", "optics", "optical", "PSK", "abbe", "measured", "lens", "shiny", "AEC", "transparent", "clear", "smooth", "refractive", "reflective", "crown")),550	::anno::hidden()551]]552 = 553	let {554		bool tmp0 = thin_walled;555		material_surface tmp1(556			smudges_weight > 0.f ? ::df::weighted_layer(::math::pow(::math::max(float3(infinite_tiling ? endless_texture(texture_2d("./textures/glass_smudges_clouds_multi.jpg", ::tex::gamma_linear), vmat_transform(texture_translate, texture_rotate, texture_scale * smudge_scale, ::base::texture_coordinate_uvw, uv_space_index), 10.f, float3(0.0590000004f, 0.050999999f, 0.125f), 8.f, false) : ::base::file_texture(texture_2d("./textures/glass_smudges_clouds_multi.jpg", ::tex::gamma_linear), color(0.f, 0.f, 0.f), color(1.f, 1.f, 1.f), ::base::mono_average, vmat_transform(texture_translate, texture_rotate, texture_scale * smudge_scale, ::base::texture_coordinate_uvw, uv_space_index), float2(0.f, 1.f), float2(0.f, 1.f), ::tex::wrap_repeat, ::tex::wrap_repeat, false).tint)[0] * smudges_1_weight, float3(infinite_tiling ? endless_texture(texture_2d("./textures/glass_smudges_clouds_multi.jpg", ::tex::gamma_linear), vmat_transform(texture_translate, texture_rotate, texture_scale * smudge_scale, ::base::texture_coordinate_uvw, uv_space_index), 10.f, float3(0.0590000004f, 0.050999999f, 0.125f), 8.f, false) : ::base::file_texture(texture_2d("./textures/glass_smudges_clouds_multi.jpg", ::tex::gamma_linear), color(0.f, 0.f, 0.f), color(1.f, 1.f, 1.f), ::base::mono_average, vmat_transform(texture_translate, texture_rotate, texture_scale * smudge_scale, ::base::texture_coordinate_uvw, uv_space_index), float2(0.f, 1.f), float2(0.f, 1.f), ::tex::wrap_repeat, ::tex::wrap_repeat, false).tint)[1] * smudges_2_weight), ::math::lerp(1.f, 3.f, smudge_balance)) * smudges_weight, ::df::microfacet_ggx_smith_bsdf(0.275000006f, 0.275000006f, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect, ""), dirt_layer_weight > 0.f ? ::df::weighted_layer(::math::pow(::math::max(::math::max(dirt_weight_1 * float3(infinite_tiling ? endless_texture(texture_2d("./textures/glass_dirt_multi_mask.jpg", ::tex::gamma_linear), vmat_transform(texture_translate, texture_rotate, dirt_scale * texture_scale, ::base::texture_coordinate_uvw, uv_space_index), 8.f, float3(0.0370000005f, 0.0759999976f, 0.0189999994f), 8.f, false) : ::base::file_texture(texture_2d("./textures/glass_dirt_multi_mask.jpg", ::tex::gamma_linear), color(0.f, 0.f, 0.f), color(1.f, 1.f, 1.f), ::base::mono_average, vmat_transform(texture_translate, texture_rotate, dirt_scale * texture_scale, ::base::texture_coordinate_uvw, uv_space_index), float2(0.f, 1.f), float2(0.f, 1.f), ::tex::wrap_repeat, ::tex::wrap_repeat, false).tint)[0], dirt_weight_2 * float3(infinite_tiling ? endless_texture(texture_2d("./textures/glass_dirt_multi_mask.jpg", ::tex::gamma_linear), vmat_transform(texture_translate, texture_rotate, dirt_scale * texture_scale, ::base::texture_coordinate_uvw, uv_space_index), 8.f, float3(0.0370000005f, 0.0759999976f, 0.0189999994f), 8.f, false) : ::base::file_texture(texture_2d("./textures/glass_dirt_multi_mask.jpg", ::tex::gamma_linear), color(0.f, 0.f, 0.f), color(1.f, 1.f, 1.f), ::base::mono_average, vmat_transform(texture_translate, texture_rotate, dirt_scale * texture_scale, ::base::texture_coordinate_uvw, uv_space_index), float2(0.f, 1.f), float2(0.f, 1.f), ::tex::wrap_repeat, ::tex::wrap_repeat, false).tint)[1]), dirt_weight_3 * float3(infinite_tiling ? endless_texture(texture_2d("./textures/glass_dirt_multi_mask.jpg", ::tex::gamma_linear), vmat_transform(texture_translate, texture_rotate, dirt_scale * texture_scale, ::base::texture_coordinate_uvw, uv_space_index), 8.f, float3(0.0370000005f, 0.0759999976f, 0.0189999994f), 8.f, false) : ::base::file_texture(texture_2d("./textures/glass_dirt_multi_mask.jpg", ::tex::gamma_linear), color(0.f, 0.f, 0.f), color(1.f, 1.f, 1.f), ::base::mono_average, vmat_transform(texture_translate, texture_rotate, dirt_scale * texture_scale, ::base::texture_coordinate_uvw, uv_space_index), float2(0.f, 1.f), float2(0.f, 1.f), ::tex::wrap_repeat, ::tex::wrap_repeat, false).tint)[2]), ::math::lerp(1.f, 4.f, dirt_balance)) * dirt_layer_weight, ::df::weighted_layer(0.603000045f, ::df::diffuse_transmission_bsdf(::nvidia::core_definitions::blend_colors(color(0.00309600006f, 0.00284500001f, 0.00266300002f), color(0.522521973f, 0.43264699f, 0.373656988f), ::base::color_layer_blend, dirt_brightness, true).tint, ""), ::df::diffuse_reflection_bsdf(::nvidia::core_definitions::blend_colors(color(0.00309600006f, 0.00284500001f, 0.00266300002f), color(0.522521973f, 0.43264699f, 0.373656988f), ::base::color_layer_blend, dirt_brightness, true).tint, 0.f, ""), ::state::normal()), ::df::weighted_layer(coating_reflectivity, ::df::specular_bsdf(coating_tint, ::df::scatter_reflect, ""), frit_weight > 0.f ? ::df::weighted_layer(histogram_scan_big(::base::file_texture(texture_2d("./textures/glass_frit_dist.png", ::tex::gamma_linear), color(0.f, 0.f, 0.f), color(1.f, 1.f, 1.f), ::base::mono_average, vmat_transform(texture_translate, texture_rotate, texture_scale * (frit_scale * 0.00999999978f), ::base::texture_coordinate_uvw, uv_space_index), float2(0.f, 1.f), float2(0.f, 1.f), ::tex::wrap_repeat, ::tex::wrap_repeat, false).mono, 0.0199999996f, 1.f - frit_size * 0.870000005f) * frit_weight, ::df::weighted_layer(reflection_transmission_balance * 0.400000006f, ::df::diffuse_transmission_bsdf(color(1.f, 1.f, 1.f), ""), ::df::custom_curve_layer(0.0580000021f, 1.f, 5.f, 1.f, ::df::microfacet_ggx_smith_bsdf(frit_roughness * frit_roughness, frit_roughness * frit_roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect, ""), ::df::diffuse_reflection_bsdf(frit_color, 0.f, ""), ::state::normal()), ::state::normal()), thin_walled ? ::df::fresnel_layer(ior, 1.f, ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect, ""), ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, transmittance, ::state::texture_tangent_u(0), ::df::scatter_transmit, ""), ::state::normal()) : ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect_transmit, ""), ::state::normal()) : thin_walled ? ::df::fresnel_layer(ior, 1.f, ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect, ""), ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, transmittance, ::state::texture_tangent_u(0), ::df::scatter_transmit, ""), ::state::normal()) : ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect_transmit, ""), ::state::normal()), ::state::normal()) : ::df::weighted_layer(coating_reflectivity, ::df::specular_bsdf(coating_tint, ::df::scatter_reflect, ""), frit_weight > 0.f ? ::df::weighted_layer(histogram_scan_big(::base::file_texture(texture_2d("./textures/glass_frit_dist.png", ::tex::gamma_linear), color(0.f, 0.f, 0.f), color(1.f, 1.f, 1.f), ::base::mono_average, vmat_transform(texture_translate, texture_rotate, texture_scale * (frit_scale * 0.00999999978f), ::base::texture_coordinate_uvw, uv_space_index), float2(0.f, 1.f), float2(0.f, 1.f), ::tex::wrap_repeat, ::tex::wrap_repeat, false).mono, 0.0199999996f, 1.f - frit_size * 0.870000005f) * frit_weight, ::df::weighted_layer(reflection_transmission_balance * 0.400000006f, ::df::diffuse_transmission_bsdf(color(1.f, 1.f, 1.f), ""), ::df::custom_curve_layer(0.0580000021f, 1.f, 5.f, 1.f, ::df::microfacet_ggx_smith_bsdf(frit_roughness * frit_roughness, frit_roughness * frit_roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect, ""), ::df::diffuse_reflection_bsdf(frit_color, 0.f, ""), ::state::normal()), ::state::normal()), thin_walled ? ::df::fresnel_layer(ior, 1.f, ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect, ""), ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, transmittance, ::state::texture_tangent_u(0), ::df::scatter_transmit, ""), ::state::normal()) : ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect_transmit, ""), ::state::normal()) : thin_walled ? ::df::fresnel_layer(ior, 1.f, ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect, ""), ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, transmittance, ::state::texture_tangent_u(0), ::df::scatter_transmit, ""), ::state::normal()) : ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect_transmit, ""), ::state::normal()), ::state::normal()) : dirt_layer_weight > 0.f ? ::df::weighted_layer(::math::pow(::math::max(::math::max(dirt_weight_1 * float3(infinite_tiling ? endless_texture(texture_2d("./textures/glass_dirt_multi_mask.jpg", ::tex::gamma_linear), vmat_transform(texture_translate, texture_rotate, dirt_scale * texture_scale, ::base::texture_coordinate_uvw, uv_space_index), 8.f, float3(0.0370000005f, 0.0759999976f, 0.0189999994f), 8.f, false) : ::base::file_texture(texture_2d("./textures/glass_dirt_multi_mask.jpg", ::tex::gamma_linear), color(0.f, 0.f, 0.f), color(1.f, 1.f, 1.f), ::base::mono_average, vmat_transform(texture_translate, texture_rotate, dirt_scale * texture_scale, ::base::texture_coordinate_uvw, uv_space_index), float2(0.f, 1.f), float2(0.f, 1.f), ::tex::wrap_repeat, ::tex::wrap_repeat, false).tint)[0], dirt_weight_2 * float3(infinite_tiling ? endless_texture(texture_2d("./textures/glass_dirt_multi_mask.jpg", ::tex::gamma_linear), vmat_transform(texture_translate, texture_rotate, dirt_scale * texture_scale, ::base::texture_coordinate_uvw, uv_space_index), 8.f, float3(0.0370000005f, 0.0759999976f, 0.0189999994f), 8.f, false) : ::base::file_texture(texture_2d("./textures/glass_dirt_multi_mask.jpg", ::tex::gamma_linear), color(0.f, 0.f, 0.f), color(1.f, 1.f, 1.f), ::base::mono_average, vmat_transform(texture_translate, texture_rotate, dirt_scale * texture_scale, ::base::texture_coordinate_uvw, uv_space_index), float2(0.f, 1.f), float2(0.f, 1.f), ::tex::wrap_repeat, ::tex::wrap_repeat, false).tint)[1]), dirt_weight_3 * float3(infinite_tiling ? endless_texture(texture_2d("./textures/glass_dirt_multi_mask.jpg", ::tex::gamma_linear), vmat_transform(texture_translate, texture_rotate, dirt_scale * texture_scale, ::base::texture_coordinate_uvw, uv_space_index), 8.f, float3(0.0370000005f, 0.0759999976f, 0.0189999994f), 8.f, false) : ::base::file_texture(texture_2d("./textures/glass_dirt_multi_mask.jpg", ::tex::gamma_linear), color(0.f, 0.f, 0.f), color(1.f, 1.f, 1.f), ::base::mono_average, vmat_transform(texture_translate, texture_rotate, dirt_scale * texture_scale, ::base::texture_coordinate_uvw, uv_space_index), float2(0.f, 1.f), float2(0.f, 1.f), ::tex::wrap_repeat, ::tex::wrap_repeat, false).tint)[2]), ::math::lerp(1.f, 4.f, dirt_balance)) * dirt_layer_weight, ::df::weighted_layer(0.603000045f, ::df::diffuse_transmission_bsdf(::nvidia::core_definitions::blend_colors(color(0.00309600006f, 0.00284500001f, 0.00266300002f), color(0.522521973f, 0.43264699f, 0.373656988f), ::base::color_layer_blend, dirt_brightness, true).tint, ""), ::df::diffuse_reflection_bsdf(::nvidia::core_definitions::blend_colors(color(0.00309600006f, 0.00284500001f, 0.00266300002f), color(0.522521973f, 0.43264699f, 0.373656988f), ::base::color_layer_blend, dirt_brightness, true).tint, 0.f, ""), ::state::normal()), ::df::weighted_layer(coating_reflectivity, ::df::specular_bsdf(coating_tint, ::df::scatter_reflect, ""), frit_weight > 0.f ? ::df::weighted_layer(histogram_scan_big(::base::file_texture(texture_2d("./textures/glass_frit_dist.png", ::tex::gamma_linear), color(0.f, 0.f, 0.f), color(1.f, 1.f, 1.f), ::base::mono_average, vmat_transform(texture_translate, texture_rotate, texture_scale * (frit_scale * 0.00999999978f), ::base::texture_coordinate_uvw, uv_space_index), float2(0.f, 1.f), float2(0.f, 1.f), ::tex::wrap_repeat, ::tex::wrap_repeat, false).mono, 0.0199999996f, 1.f - frit_size * 0.870000005f) * frit_weight, ::df::weighted_layer(reflection_transmission_balance * 0.400000006f, ::df::diffuse_transmission_bsdf(color(1.f, 1.f, 1.f), ""), ::df::custom_curve_layer(0.0580000021f, 1.f, 5.f, 1.f, ::df::microfacet_ggx_smith_bsdf(frit_roughness * frit_roughness, frit_roughness * frit_roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect, ""), ::df::diffuse_reflection_bsdf(frit_color, 0.f, ""), ::state::normal()), ::state::normal()), thin_walled ? ::df::fresnel_layer(ior, 1.f, ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect, ""), ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, transmittance, ::state::texture_tangent_u(0), ::df::scatter_transmit, ""), ::state::normal()) : ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect_transmit, ""), ::state::normal()) : thin_walled ? ::df::fresnel_layer(ior, 1.f, ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect, ""), ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, transmittance, ::state::texture_tangent_u(0), ::df::scatter_transmit, ""), ::state::normal()) : ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect_transmit, ""), ::state::normal()), ::state::normal()) : ::df::weighted_layer(coating_reflectivity, ::df::specular_bsdf(coating_tint, ::df::scatter_reflect, ""), frit_weight > 0.f ? ::df::weighted_layer(histogram_scan_big(::base::file_texture(texture_2d("./textures/glass_frit_dist.png", ::tex::gamma_linear), color(0.f, 0.f, 0.f), color(1.f, 1.f, 1.f), ::base::mono_average, vmat_transform(texture_translate, texture_rotate, texture_scale * (frit_scale * 0.00999999978f), ::base::texture_coordinate_uvw, uv_space_index), float2(0.f, 1.f), float2(0.f, 1.f), ::tex::wrap_repeat, ::tex::wrap_repeat, false).mono, 0.0199999996f, 1.f - frit_size * 0.870000005f) * frit_weight, ::df::weighted_layer(reflection_transmission_balance * 0.400000006f, ::df::diffuse_transmission_bsdf(color(1.f, 1.f, 1.f), ""), ::df::custom_curve_layer(0.0580000021f, 1.f, 5.f, 1.f, ::df::microfacet_ggx_smith_bsdf(frit_roughness * frit_roughness, frit_roughness * frit_roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect, ""), ::df::diffuse_reflection_bsdf(frit_color, 0.f, ""), ::state::normal()), ::state::normal()), thin_walled ? ::df::fresnel_layer(ior, 1.f, ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect, ""), ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, transmittance, ::state::texture_tangent_u(0), ::df::scatter_transmit, ""), ::state::normal()) : ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect_transmit, ""), ::state::normal()) : thin_walled ? ::df::fresnel_layer(ior, 1.f, ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect, ""), ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, transmittance, ::state::texture_tangent_u(0), ::df::scatter_transmit, ""), ::state::normal()) : ::df::microfacet_ggx_smith_bsdf(roughness * roughness, roughness * roughness, color(1.f, 1.f, 1.f), ::state::texture_tangent_u(0), ::df::scatter_reflect_transmit, ""), ::state::normal()),557			material_emission(emission: edf(), intensity: color(0.f, 0.f, 0.f), mode: intensity_radiant_exitance));558		material_surface tmp2 = material_surface(scattering: bsdf(), emission: material_emission(emission: edf(), intensity: color(0.f, 0.f, 0.f), mode: intensity_radiant_exitance));559		color tmp3 = ::base::abbe_number_ior(ior, abbe_number);560		material_volume tmp4 = thin_walled ? material_volume(scattering: vdf(), absorption_coefficient: color(0.f, 0.f, 0.f), scattering_coefficient: color(0.f, 0.f, 0.f)) : material_volume(vdf(), custom_volume_transmittance(units_absorption_thickness, absorption_thickness, transmittance, color(0.f, 0.f, 0.f)).absorption_coefficient, custom_volume_transmittance(units_absorption_thickness, absorption_thickness, transmittance, color(0.f, 0.f, 0.f)).scattering_coefficient);561		material_geometry tmp5(562			float3(0.f),563			1.f,564			normal);565	} in566		material(567			thin_walled: tmp0,568			surface: tmp1,569			backface: tmp2,570			ior: tmp3,571			volume: tmp4,572			geometry: tmp5);573			574 575 576 577// ------------------------------- 6. Optical Glass ------------------------------- 578// All Optical glasses are completely transparent but have appropriate settings for579// their IOR and abbe numbers580 581// 6.1 582export material Glass_Optical_PSK(*)583[[584	::anno::author("NVIDIA vMaterials"),585    ::anno::display_name("Glass Clear - Phosphate Dense Crown"),586    ::anno::description(DESCRIPTION),587	::anno::copyright_notice(COPYRIGHT),588    ::anno::thumbnail("./.thumbs/Glass_Optical.Glass_Optical_PSK.png"),589	::anno::key_words(string[]("glass", "layered", "optics", "optical", "abbe", "measured", "lens", "shiny", "AEC", "transparent", "clear", "smooth", "refractive", "reflective", "crown")),590    ::anno::hidden()591]] = Glass_Optical592(593	infinite_tiling:		false,594	thin_walled:			false,595	ior:					1.5544f,596	abbe_number:			63.23f,597	roughness: 				0.f,598	units_absorption_thickness: unit_m ,599	absorption_thickness:	1.f,600	transmittance: 			color(1.0f),601// Coating	602	coating_reflectivity: 	0.0f,603	coating_tint: 			color(1.f, 1.f, 1.f),604// Frit	605	frit_weight:			0.f,606	frit_color:				color(.5f),607	frit_size:				0.3f,608	frit_roughness:			0.286f,609	frit_scale:				float2(1.f),610	reflection_transmission_balance: 0.f,611// Dirt	612	dirt_layer_weight:		0.0,613	dirt_brightness:		0.75f,614	dirt_weight_1:			0.9f,615	dirt_weight_2:			0.3f,616	dirt_weight_3:			0.f,617	dirt_balance:			0.374f,618	dirt_scale:				float2(1.f),619// Smudges	620	smudges_weight:			0.0f,621	smudges_1_weight:		0.95f,622	smudges_2_weight:		0.4f,623	smudge_balance:			0.2f,624	smudge_scale:			float2(1.f),625//Transform	626	texture_translate:		float2(0.f),627	texture_rotate:			0.f,628	texture_scale: 			float2(1.f),629// Advanced	630	uv_space_index:			0,631	normal:					::state::normal()632);633 634 635// 6.2636export material Glass_Optical_FK(*)637[[638	::anno::author("NVIDIA vMaterials"),639    ::anno::display_name("Glass Clear - Flourine Crown"),640    ::anno::description(DESCRIPTION),641	::anno::copyright_notice(COPYRIGHT),642	::anno::thumbnail("./.thumbs/Glass_Optical.Glass_Optical_FK.png"),643	::anno::key_words(string[]("glass", "layered", "optics", "optical", "abbe", "measured", "lens", "shiny", "AEC", "transparent", "clear", "smooth", "refractive", "reflective", "crown"))644]] = Glass_Optical645(646	infinite_tiling:		false,647	thin_walled:			false,648	ior:					1.48914f,649	abbe_number:			70.23f,650	roughness: 				0.f,651	units_absorption_thickness: unit_cm ,652	absorption_thickness:	1.f,653	transmittance: 			color(1.0f),654// Coating	655	coating_reflectivity: 	0.0f,656	coating_tint: 			color(1.f, 1.f, 1.f),657// Frit	658	frit_weight:			0.f,659	frit_color:				color(.5f),660	frit_size:				0.3f,661	frit_roughness:			0.286f,662	frit_scale:				float2(1.f),663	reflection_transmission_balance: 0.f,664// Dirt	665	dirt_layer_weight:		0.0,666	dirt_brightness:		0.75f,667	dirt_weight_1:			0.9f,668	dirt_weight_2:			0.3f,669	dirt_weight_3:			0.f,670	dirt_balance:			0.374f,671	dirt_scale:				float2(1.f),672// Smudges	673	smudges_weight:			0.0f,674	smudges_1_weight:		0.95f,675	smudges_2_weight:		0.4f,676	smudge_balance:			0.2f,677	smudge_scale:			float2(1.f),678//Transform	679	texture_translate:		float2(0.f),680	texture_rotate:			0.f,681	texture_scale: 			float2(1.f),682// Advanced	683	uv_space_index:			0,684	normal:					::state::normal()685);686 687 688// 6.3689export material Glass_Optical_PK(*)690[[691	::anno::author("NVIDIA vMaterials"),692    ::anno::display_name("Glass Clear - Phosphate Crown"),693    ::anno::description(DESCRIPTION),694	::anno::copyright_notice(COPYRIGHT),695	::anno::thumbnail("./.thumbs/Glass_Optical.Glass_Optical_PK.png"),696	::anno::key_words(string[]("glass", "layered", "optics", "optical", "abbe", "measured", "lens", "shiny", "AEC", "transparent", "clear", "smooth", "refractive", "reflective", "crown"))697]] = Glass_Optical698(699	infinite_tiling:		false,700	thin_walled:			false,701	ior:					1.53019,702	abbe_number:			76.58f,703	roughness: 				0.f,704	units_absorption_thickness: unit_cm ,705	absorption_thickness:	1.f,706	transmittance: 			color(1.0f),707// Coating	708	coating_reflectivity: 	0.0f,709	coating_tint: 			color(1.f, 1.f, 1.f),710// Frit	711	frit_weight:			0.f,712	frit_color:				color(.5f),713	frit_size:				0.3f,714	frit_roughness:			0.286f,715	frit_scale:				float2(1.f),716	reflection_transmission_balance: 0.f,717// Dirt	718	dirt_layer_weight:		0.0,719	dirt_brightness:		0.75f,720	dirt_weight_1:			0.9f,721	dirt_weight_2:			0.3f,722	dirt_weight_3:			0.f,723	dirt_balance:			0.374f,724	dirt_scale:				float2(1.f),725// Smudges	726	smudges_weight:			0.0f,727	smudges_1_weight:		0.95f,728	smudges_2_weight:		0.4f,729	smudge_balance:			0.2f,730	smudge_scale:			float2(1.f),731//Transform	732	texture_translate:		float2(0.f),733	texture_rotate:			0.f,734	texture_scale: 			float2(1.f),735// Advanced	736	uv_space_index:			0,737	normal:					::state::normal()738);739 740 741// 6.4742export material Glass_Optical_BK(*)743[[744	::anno::author("NVIDIA vMaterials"),745    ::anno::display_name("Glass Clear - Boron Crown"),746    ::anno::description(DESCRIPTION),747	::anno::copyright_notice(COPYRIGHT),748	::anno::thumbnail("./.thumbs/Glass_Optical.Glass_Optical_BK.png"),749	::anno::key_words(string[]("glass", "layered", "optics", "optical", "abbe", "measured", "lens", "shiny", "AEC", "transparent", "clear", "smooth", "refractive", "reflective", "crown"))750]] = Glass_Optical751(752	infinite_tiling:		false,753	thin_walled:			false,754	ior:					1.51872f,755	abbe_number:			63.96f,756	roughness: 				0.f,757	units_absorption_thickness: unit_cm ,758	absorption_thickness:	1.f,759	transmittance: 			color(1.0f),760// Coating	761	coating_reflectivity: 	0.0f,762	coating_tint: 			color(1.f, 1.f, 1.f),763// Frit	764	frit_weight:			0.f,765	frit_color:				color(.5f),766	frit_size:				0.3f,767	frit_roughness:			0.286f,768	frit_scale:				float2(1.f),769	reflection_transmission_balance: 0.f,770// Dirt	771	dirt_layer_weight:		0.0,772	dirt_brightness:		0.75f,773	dirt_weight_1:			0.9f,774	dirt_weight_2:			0.3f,775	dirt_weight_3:			0.f,776	dirt_balance:			0.374f,777	dirt_scale:				float2(1.f),778// Smudges	779	smudges_weight:			0.0f,780	smudges_1_weight:		0.95f,781	smudges_2_weight:		0.4f,782	smudge_balance:			0.2f,783	smudge_scale:			float2(1.f),784//Transform	785	texture_translate:		float2(0.f),786	texture_rotate:			0.f,787	texture_scale: 			float2(1.f),788// Advanced	789	uv_space_index:			0,790	normal:					::state::normal()791);792 793 794// 6.5795export material Glass_Optical_LAK(*)796[[797	::anno::author("NVIDIA vMaterials"),798    ::anno::display_name("Glass Clear - Lanthanum Crown"),799    ::anno::description(DESCRIPTION),800	::anno::copyright_notice(COPYRIGHT),801	::anno::thumbnail("./.thumbs/Glass_Optical.Glass_Optical_LAK.png"),802	::anno::key_words(string[]("glass", "layered", "optics", "optical", "abbe", "measured", "lens", "shiny", "AEC", "transparent", "clear", "smooth", "refractive", "reflective", "crown"))803]] = Glass_Optical804(805	infinite_tiling:		false,806	thin_walled:			false,807	ior:					1.65425,808	abbe_number:			58.26f,809	roughness: 				0.f,810	units_absorption_thickness: unit_cm ,811	absorption_thickness:	1.f,812	transmittance: 			color(1.0f),813// Coating	814	coating_reflectivity: 	0.0f,815	coating_tint: 			color(1.f, 1.f, 1.f),816// Frit	817	frit_weight:			0.f,818	frit_color:				color(.5f),819	frit_size:				0.3f,820	frit_roughness:			0.286f,821	frit_scale:				float2(1.f),822	reflection_transmission_balance: 0.f,823// Dirt	824	dirt_layer_weight:		0.0,825	dirt_brightness:		0.75f,826	dirt_weight_1:			0.9f,827	dirt_weight_2:			0.3f,828	dirt_weight_3:			0.f,829	dirt_balance:			0.374f,830	dirt_scale:				float2(1.f),831// Smudges	832	smudges_weight:			0.0f,833	smudges_1_weight:		0.95f,834	smudges_2_weight:		0.4f,835	smudge_balance:			0.2f,836	smudge_scale:			float2(1.f),837//Transform	838	texture_translate:		float2(0.f),839	texture_rotate:			0.f,840	texture_scale: 			float2(1.f),841// Advanced	842	uv_space_index:			0,843	normal:					::state::normal()844);845 846 847// 6.6848export material Glass_Optical_SK(*)849[[850	::anno::author("NVIDIA vMaterials"),851    ::anno::display_name("Glass Clear - Dense Crown"),852    ::anno::description(DESCRIPTION),853	::anno::copyright_notice(COPYRIGHT),854	::anno::thumbnail("./.thumbs/Glass_Optical.Glass_Optical_SK.png"),855	::anno::key_words(string[]("glass", "layered", "optics", "optical", "abbe", "measured", "lens", "shiny", "AEC", "transparent", "clear", "smooth", "refractive", "reflective", "crown"))856]] = Glass_Optical857(858	infinite_tiling:		false,859	thin_walled:			false,860	ior:					1.59142,861	abbe_number:			61.02f,862	roughness: 				0.f,863	units_absorption_thickness: unit_cm ,864	absorption_thickness:	1.f,865	transmittance: 			color(1.0f),866// Coating	867	coating_reflectivity: 	0.0f,868	coating_tint: 			color(1.f, 1.f, 1.f),869// Frit	870	frit_weight:			0.f,871	frit_color:				color(.5f),872	frit_size:				0.3f,873	frit_roughness:			0.286f,874	frit_scale:				float2(1.f),875	reflection_transmission_balance: 0.f,876// Dirt	877	dirt_layer_weight:		0.0,878	dirt_brightness:		0.75f,879	dirt_weight_1:			0.9f,880	dirt_weight_2:			0.3f,881	dirt_weight_3:			0.f,882	dirt_balance:			0.374f,883	dirt_scale:				float2(1.f),884// Smudges	885	smudges_weight:			0.0f,886	smudges_1_weight:		0.95f,887	smudges_2_weight:		0.4f,888	smudge_balance:			0.2f,889	smudge_scale:			float2(1.f),890//Transform	891	texture_translate:		float2(0.f),892	texture_rotate:			0.f,893	texture_scale: 			float2(1.f),894// Advanced	895	uv_space_index:			0,896	normal:					::state::normal()897);898 899 900// 6.7901export material Glass_Optical_SSK(*)902[[903	::anno::author("NVIDIA vMaterials"),904    ::anno::display_name("Glass Clear - Extra Dense Crown"),905    ::anno::description(DESCRIPTION),906	::anno::copyright_notice(COPYRIGHT),907	::anno::thumbnail("./.thumbs/Glass_Optical.Glass_Optical_SSK.png"),908	::anno::key_words(string[]("glass", "layered", "optics", "optical", "abbe", "measured", "lens", "shiny", "AEC", "transparent", "clear", "smooth", "refractive", "reflective", "crown"))909]] = Glass_Optical910(911	infinite_tiling:		false,912	thin_walled:			false,913	ior:					1.62508,914	abbe_number:			52.99f,915	roughness: 				0.f,916	units_absorption_thickness: unit_cm ,917	absorption_thickness:	1.f,918	transmittance: 			color(1.0f),919// Coating	920	coating_reflectivity: 	0.0f,921	coating_tint: 			color(1.f, 1.f, 1.f),922// Frit	923	frit_weight:			0.f,924	frit_color:				color(.5f),925	frit_size:				0.3f,926	frit_roughness:			0.286f,927	frit_scale:				float2(1.f),928	reflection_transmission_balance: 0.f,929// Dirt	930	dirt_layer_weight:		0.0,931	dirt_brightness:		0.75f,932	dirt_weight_1:			0.9f,933	dirt_weight_2:			0.3f,934	dirt_weight_3:			0.f,935	dirt_balance:			0.374f,936	dirt_scale:				float2(1.f),937// Smudges	938	smudges_weight:			0.0f,939	smudges_1_weight:		0.95f,940	smudges_2_weight:		0.4f,941	smudge_balance:			0.2f,942	smudge_scale:			float2(1.f),943//Transform	944	texture_translate:		float2(0.f),945	texture_rotate:			0.f,946	texture_scale: 			float2(1.f),947// Advanced	948	uv_space_index:			0,949	normal:					::state::normal()950);951 952 953// 6.8954export material Glass_Optical_BAK(*)955[[956	::anno::author("NVIDIA vMaterials"),957    ::anno::display_name("Glass Clear - Barium Crown"),958    ::anno::description(DESCRIPTION),959	::anno::copyright_notice(COPYRIGHT),960	::anno::thumbnail("./.thumbs/Glass_Optical.Glass_Optical_BAK.png"),961	::anno::key_words(string[]("glass", "layered", "optics", "optical", "abbe", "measured", "lens", "shiny", "AEC", "transparent", "clear", "smooth", "refractive", "reflective", "crown"))962]] = Glass_Optical963(964	infinite_tiling:		false,965	thin_walled:			false,966	ior:					1.57125f,967	abbe_number:			55.7f,968	roughness: 				0.f,969	units_absorption_thickness: unit_cm ,970	absorption_thickness:	1.f,971	transmittance: 			color(1.0f),972// Coating	973	coating_reflectivity: 	0.0f,974	coating_tint: 			color(1.f, 1.f, 1.f),975// Frit	976	frit_weight:			0.f,977	frit_color:				color(.5f),978	frit_size:				0.3f,979	frit_roughness:			0.286f,980	frit_scale:				float2(1.f),981	reflection_transmission_balance: 0.f,982// Dirt	983	dirt_layer_weight:		0.0,984	dirt_brightness:		0.75f,985	dirt_weight_1:			0.9f,986	dirt_weight_2:			0.3f,987	dirt_weight_3:			0.f,988	dirt_balance:			0.374f,989	dirt_scale:				float2(1.f),990// Smudges	991	smudges_weight:			0.0f,992	smudges_1_weight:		0.95f,993	smudges_2_weight:		0.4f,994	smudge_balance:			0.2f,995	smudge_scale:			float2(1.f),996//Transform	997	texture_translate:		float2(0.f),998	texture_rotate:			0.f,999	texture_scale: 			float2(1.f),1000// Advanced	1001	uv_space_index:			0,1002	normal:					::state::normal()1003);1004 1005 1006 1007// 6.91008export material Glass_Optical_BALF(*)1009[[1010	::anno::author("NVIDIA vMaterials"),1011    ::anno::display_name("Glass Clear - Barium Light Flint"),1012    ::anno::description(DESCRIPTION),1013	::anno::copyright_notice(COPYRIGHT),1014	::anno::thumbnail("./.thumbs/Glass_Optical.Glass_Optical_BALF.png"),1015	::anno::key_words(string[]("glass", "layered", "optics", "optical", "abbe", "measured", "lens", "shiny", "AEC", "transparent", "clear", "smooth", "refractive", "reflective", "flint"))1016]] = Glass_Optical1017(1018	infinite_tiling:		false,1019	thin_walled:			false,1020	ior:					1.58212,1021	abbe_number:			53.59f,1022	roughness: 				0.f,1023	units_absorption_thickness: unit_cm ,1024	absorption_thickness:	1.f,1025	transmittance: 			color(1.0f),1026// Coating	1027	coating_reflectivity: 	0.0f,1028	coating_tint: 			color(1.f, 1.f, 1.f),1029// Frit	1030	frit_weight:			0.f,1031	frit_color:				color(.5f),1032	frit_size:				0.3f,1033	frit_roughness:			0.286f,1034	frit_scale:				float2(1.f),1035	reflection_transmission_balance: 0.f,1036// Dirt	1037	dirt_layer_weight:		0.0,1038	dirt_brightness:		0.75f,1039	dirt_weight_1:			0.9f,1040	dirt_weight_2:			0.3f,1041	dirt_weight_3:			0.f,1042	dirt_balance:			0.374f,1043	dirt_scale:				float2(1.f),1044// Smudges	1045	smudges_weight:			0.0f,1046	smudges_1_weight:		0.95f,1047	smudges_2_weight:		0.4f,1048	smudge_balance:			0.2f,1049	smudge_scale:			float2(1.f),1050//Transform	1051	texture_translate:		float2(0.f),1052	texture_rotate:			0.f,1053	texture_scale: 			float2(1.f),1054// Advanced	1055	uv_space_index:			0,1056	normal:					::state::normal()1057);1058 1059 1060// 6.101061export material Glass_Optical_K(*)1062[[1063	::anno::author("NVIDIA vMaterials"),1064    ::anno::display_name("Glass Clear - Crown"),1065    ::anno::description(DESCRIPTION),1066	::anno::copyright_notice(COPYRIGHT),1067	::anno::thumbnail("./.thumbs/Glass_Optical.Glass_Optical_K.png"),1068	::anno::key_words(string[]("glass", "layered", "optics", "optical", "abbe", "measured", "lens", "shiny", "AEC", "transparent", "clear", "smooth", "refractive", "reflective", "crown"))1069]] = Glass_Optical1070(1071	infinite_tiling:		false,1072	thin_walled:			false,1073	ior:					1.52458f,1074	abbe_number:			59.22f,1075	roughness: 				0.f,1076	units_absorption_thickness: unit_cm ,1077	absorption_thickness:	1.f,1078	transmittance: 			color(1.0f),1079// Coating	1080	coating_reflectivity: 	0.0f,1081	coating_tint: 			color(1.f, 1.f, 1.f),1082// Frit	1083	frit_weight:			0.f,1084	frit_color:				color(.5f),1085	frit_size:				0.3f,1086	frit_roughness:			0.286f,1087	frit_scale:				float2(1.f),1088	reflection_transmission_balance: 0.f,1089// Dirt	1090	dirt_layer_weight:		0.0,1091	dirt_brightness:		0.75f,1092	dirt_weight_1:			0.9f,1093	dirt_weight_2:			0.3f,1094	dirt_weight_3:			0.f,1095	dirt_balance:			0.374f,1096	dirt_scale:				float2(1.f),1097// Smudges	1098	smudges_weight:			0.0f,1099	smudges_1_weight:		0.95f,1100	smudges_2_weight:		0.4f,1101	smudge_balance:			0.2f,1102	smudge_scale:			float2(1.f),1103//Transform	1104	texture_translate:		float2(0.f),1105	texture_rotate:			0.f,1106	texture_scale: 			float2(1.f),1107// Advanced	1108	uv_space_index:			0,1109	normal:					::state::normal()1110);1111 1112 1113// 6.111114export material Glass_Optical_KF(*)1115[[1116	::anno::author("NVIDIA vMaterials"),1117    ::anno::display_name("Glass Clear - Crown Flint"),1118    ::anno::description(DESCRIPTION),1119	::anno::copyright_notice(COPYRIGHT),1120	::anno::thumbnail("./.thumbs/Glass_Optical.Glass_Optical_KF.png"),1121	::anno::key_words(string[]("glass", "layered", "optics", "optical", "abbe", "measured", "lens", "shiny", "AEC", "transparent", "clear", "smooth", "refractive", "reflective", "crown", "flint"))1122]] = Glass_Optical1123(1124	infinite_tiling:		false,1125	thin_walled:			false,1126	ior:					1.52588f,1127	abbe_number:			51.26f,1128	roughness: 				0.f,1129	units_absorption_thickness: unit_cm ,1130	absorption_thickness:	1.f,1131	transmittance: 			color(1.0f),1132// Coating	1133	coating_reflectivity: 	0.0f,1134	coating_tint: 			color(1.f, 1.f, 1.f),1135// Frit	1136	frit_weight:			0.f,1137	frit_color:				color(.5f),1138	frit_size:				0.3f,1139	frit_roughness:			0.286f,1140	frit_scale:				float2(1.f),1141	reflection_transmission_balance: 0.f,1142// Dirt	1143	dirt_layer_weight:		0.0,1144	dirt_brightness:		0.75f,1145	dirt_weight_1:			0.9f,1146	dirt_weight_2:			0.3f,1147	dirt_weight_3:			0.f,1148	dirt_balance:			0.374f,1149	dirt_scale:				float2(1.f),1150// Smudges	1151	smudges_weight:			0.0f,1152	smudges_1_weight:		0.95f,1153	smudges_2_weight:		0.4f,1154	smudge_balance:			0.2f,1155	smudge_scale:			float2(1.f),1156//Transform	1157	texture_translate:		float2(0.f),1158	texture_rotate:			0.f,1159	texture_scale: 			float2(1.f),1160// Advanced	1161	uv_space_index:			0,1162	normal:					::state::normal()1163);1164 1165 1166// 6.121167export material Glass_Optical_LASF(*)1168[[1169	::anno::author("NVIDIA vMaterials"),1170    ::anno::display_name("Glass Clear - Lanthanum Dense Flint"),1171    ::anno::description(DESCRIPTION),1172	::anno::copyright_notice(COPYRIGHT),1173	::anno::thumbnail("./.thumbs/Glass_Optical.Glass_Optical_LASF.png"),1174	::anno::key_words(string[]("glass", "layered", "optics", "optical", "abbe", "measured", "lens", "shiny", "AEC", "transparent", "clear", "smooth", "refractive", "reflective", "flint"))1175]] = Glass_Optical1176(1177	infinite_tiling:		false,1178	thin_walled:			false,1179	ior:					1.83935,1180	abbe_number:			37.04f,1181	roughness: 				0.f,1182	units_absorption_thickness: unit_cm ,1183	absorption_thickness:	1.f,1184	transmittance: 			color(1.0f),1185// Coating	1186	coating_reflectivity: 	0.0f,1187	coating_tint: 			color(1.f, 1.f, 1.f),1188// Frit	1189	frit_weight:			0.f,1190	frit_color:				color(.5f),1191	frit_size:				0.3f,1192	frit_roughness:			0.286f,1193	frit_scale:				float2(1.f),1194	reflection_transmission_balance: 0.f,1195// Dirt	1196	dirt_layer_weight:		0.0,1197	dirt_brightness:		0.75f,1198	dirt_weight_1:			0.9f,1199	dirt_weight_2:			0.3f,1200	dirt_weight_3:			0.f,

Showing the first 1,200 of 1587 lines. Download the file for the rest.

AVSim/simulation-package · Team Ai