Add SimReady package: MCV430_12FAN_CONF
Browse files- .gitattributes +2 -0
- MCV430_12FAN_CONF/.metadata/MCV430_12FAN_CONF_benchmark.json +63 -0
- MCV430_12FAN_CONF/.metadata/MCV430_12FAN_CONF_validation.json +70 -0
- MCV430_12FAN_CONF/.metadata/com.nvidia.simready.conformance.Package@1.0.0.json +35 -0
- MCV430_12FAN_CONF/.metadata/com.nvidia.simready.packaging.bom.json +135 -0
- MCV430_12FAN_CONF/com.nvidia.simready.packaging.json +19 -0
- MCV430_12FAN_CONF/simready_usd/.simready/validation.json +68 -0
- MCV430_12FAN_CONF/simready_usd/.thumbs/256x256/MCV430_12FAN_CONF_main.usd.png +3 -0
- MCV430_12FAN_CONF/simready_usd/.thumbs/256x256/MCV430_12FAN_CONF_main.usd_light.png +3 -0
- MCV430_12FAN_CONF/simready_usd/.thumbs/256x256/MCV430_12FAN_CONF_main.usd_transparent.png +3 -0
- MCV430_12FAN_CONF/simready_usd/MCV430_12FAN_CONF_main.usd +0 -0
- MCV430_12FAN_CONF/simready_usd/layers/MCV430_12FAN_ConnectionPoints.usd +0 -0
- MCV430_12FAN_CONF/simready_usd/layers/MCV430_12FAN_Properties.json +433 -0
- MCV430_12FAN_CONF/simready_usd/layers/MCV430_12FAN_Properties.usda +841 -0
- MCV430_12FAN_CONF/simready_usd/materials/Carpaint_Solid.mdl +1112 -0
- MCV430_12FAN_CONF/simready_usd/materials/Copper.mdl +54 -0
- MCV430_12FAN_CONF/simready_usd/materials/Metal_Black_Paint.mdl +13 -0
- MCV430_12FAN_CONF/simready_usd/materials/Plastic_Thick_Translucent_Flakes.mdl +1025 -0
- MCV430_12FAN_CONF/simready_usd/materials/WhiteMode.mdl +31 -0
- MCV430_12FAN_CONF/simready_usd/payloads/external.usd +3 -0
- MCV430_12FAN_CONF/simready_usd/payloads/internal.usd +3 -0
- MCV430_12FAN_CONF/simready_usd/textures/ver_logo_tm_hrz_rgb_rev.png +3 -0
.gitattributes
CHANGED
|
@@ -129,3 +129,5 @@ MCV330_12FAN/simready_usd/payloads/external.usd filter=lfs diff=lfs merge=lfs -t
|
|
| 129 |
MCV330_12FAN/simready_usd/payloads/internal.usd filter=lfs diff=lfs merge=lfs -text
|
| 130 |
MCV330_6FAN/simready_usd/payloads/external.usd filter=lfs diff=lfs merge=lfs -text
|
| 131 |
MCV330_6FAN/simready_usd/payloads/internal.usd filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
|
|
|
| 129 |
MCV330_12FAN/simready_usd/payloads/internal.usd filter=lfs diff=lfs merge=lfs -text
|
| 130 |
MCV330_6FAN/simready_usd/payloads/external.usd filter=lfs diff=lfs merge=lfs -text
|
| 131 |
MCV330_6FAN/simready_usd/payloads/internal.usd filter=lfs diff=lfs merge=lfs -text
|
| 132 |
+
MCV430_12FAN_CONF/simready_usd/payloads/external.usd filter=lfs diff=lfs merge=lfs -text
|
| 133 |
+
MCV430_12FAN_CONF/simready_usd/payloads/internal.usd filter=lfs diff=lfs merge=lfs -text
|
MCV430_12FAN_CONF/.metadata/MCV430_12FAN_CONF_benchmark.json
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"schema_version": "1.0",
|
| 3 |
+
"asset": "MCV430_12FAN_CONF",
|
| 4 |
+
"run_timestamp": "2026-10-22T15:03:15Z",
|
| 5 |
+
"passed": false,
|
| 6 |
+
"results": [
|
| 7 |
+
{
|
| 8 |
+
"test_name": "culling_xz",
|
| 9 |
+
"engine": "isaac_sim",
|
| 10 |
+
"engine_version": "",
|
| 11 |
+
"status": "fail",
|
| 12 |
+
"passed": false,
|
| 13 |
+
"duration": 547.248,
|
| 14 |
+
"message": "Engine session kit_43364_9 crashed before the test could complete (retries exhausted).",
|
| 15 |
+
"metrics": {},
|
| 16 |
+
"kit_logs": []
|
| 17 |
+
},
|
| 18 |
+
{
|
| 19 |
+
"test_name": "light_response",
|
| 20 |
+
"engine": "isaac_sim",
|
| 21 |
+
"engine_version": "",
|
| 22 |
+
"status": "fail",
|
| 23 |
+
"passed": false,
|
| 24 |
+
"duration": 543.962,
|
| 25 |
+
"message": "Engine session kit_43364_12 crashed before the test could complete (retries exhausted).",
|
| 26 |
+
"metrics": {},
|
| 27 |
+
"kit_logs": []
|
| 28 |
+
},
|
| 29 |
+
{
|
| 30 |
+
"test_name": "normals_xz",
|
| 31 |
+
"engine": "isaac_sim",
|
| 32 |
+
"engine_version": "",
|
| 33 |
+
"status": "fail",
|
| 34 |
+
"passed": false,
|
| 35 |
+
"duration": 543.633,
|
| 36 |
+
"message": "Engine session kit_43364_15 crashed before the test could complete (retries exhausted).",
|
| 37 |
+
"metrics": {},
|
| 38 |
+
"kit_logs": []
|
| 39 |
+
},
|
| 40 |
+
{
|
| 41 |
+
"test_name": "pivot",
|
| 42 |
+
"engine": "isaac_sim",
|
| 43 |
+
"engine_version": "",
|
| 44 |
+
"status": "fail",
|
| 45 |
+
"passed": false,
|
| 46 |
+
"duration": 543.556,
|
| 47 |
+
"message": "Engine session kit_43364_18 crashed before the test could complete (retries exhausted).",
|
| 48 |
+
"metrics": {},
|
| 49 |
+
"kit_logs": []
|
| 50 |
+
},
|
| 51 |
+
{
|
| 52 |
+
"test_name": "presence",
|
| 53 |
+
"engine": "isaac_sim",
|
| 54 |
+
"engine_version": "",
|
| 55 |
+
"status": "fail",
|
| 56 |
+
"passed": false,
|
| 57 |
+
"duration": 543.246,
|
| 58 |
+
"message": "Engine session kit_43364_21 crashed before the test could complete (retries exhausted).",
|
| 59 |
+
"metrics": {},
|
| 60 |
+
"kit_logs": []
|
| 61 |
+
}
|
| 62 |
+
]
|
| 63 |
+
}
|
MCV430_12FAN_CONF/.metadata/MCV430_12FAN_CONF_validation.json
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"simready_usd/MCV430_12FAN_CONF_main.usd": {
|
| 3 |
+
"features_summary": {
|
| 4 |
+
"FET200_AIF": {
|
| 5 |
+
"blocking_failure": true,
|
| 6 |
+
"dependencies": "[]",
|
| 7 |
+
"failing requirements": "['com.nvidia.simready.AM.007']",
|
| 8 |
+
"passed": false,
|
| 9 |
+
"requirement_messages": "{\"com.nvidia.simready.AM.007\": [\"No equipment class definition found for assetClass 'Cooling'. Defined classes: cdu, compute-rack, crah, ups.\"]}",
|
| 10 |
+
"version": "0.1.0"
|
| 11 |
+
},
|
| 12 |
+
"FET201_AIF": {
|
| 13 |
+
"blocking_failure": true,
|
| 14 |
+
"dependencies": "[{'FET200_AIF': {'version': '0.1.0'}}]",
|
| 15 |
+
"failing requirements": "['com.nvidia.simready.AM.007']",
|
| 16 |
+
"passed": false,
|
| 17 |
+
"requirement_messages": "{\"com.nvidia.simready.AM.007\": [\"No equipment class definition found for assetClass 'Cooling'. Defined classes: cdu, compute-rack, crah, ups.\"]}",
|
| 18 |
+
"version": "0.2.0"
|
| 19 |
+
},
|
| 20 |
+
"FET202_AIF": {
|
| 21 |
+
"blocking_failure": true,
|
| 22 |
+
"dependencies": "[{'FET201_AIF': {'version': '0.2.0'}}]",
|
| 23 |
+
"failing requirements": "['com.nvidia.simready.AM.007']",
|
| 24 |
+
"passed": false,
|
| 25 |
+
"requirement_messages": "{\"com.nvidia.simready.AM.007\": [\"No equipment class definition found for assetClass 'Cooling'. Defined classes: cdu, compute-rack, crah, ups.\"]}",
|
| 26 |
+
"version": "0.2.0"
|
| 27 |
+
},
|
| 28 |
+
"FET203_AIF": {
|
| 29 |
+
"blocking_failure": true,
|
| 30 |
+
"dependencies": "[{'FET201_AIF': {'version': '0.2.0'}}]",
|
| 31 |
+
"failing requirements": "['com.nvidia.simready.AM.007']",
|
| 32 |
+
"passed": false,
|
| 33 |
+
"requirement_messages": "{\"com.nvidia.simready.AM.007\": [\"No equipment class definition found for assetClass 'Cooling'. Defined classes: cdu, compute-rack, crah, ups.\"]}",
|
| 34 |
+
"version": "0.2.0"
|
| 35 |
+
},
|
| 36 |
+
"FET_000_STANDARD": {
|
| 37 |
+
"blocking_failure": false,
|
| 38 |
+
"dependencies": "[]",
|
| 39 |
+
"passed": true,
|
| 40 |
+
"version": "0.2.0"
|
| 41 |
+
},
|
| 42 |
+
"FET_001_STANDARD": {
|
| 43 |
+
"blocking_failure": false,
|
| 44 |
+
"dependencies": "[]",
|
| 45 |
+
"passed": true,
|
| 46 |
+
"version": "1.0.0"
|
| 47 |
+
},
|
| 48 |
+
"FET_031_STANDARD": {
|
| 49 |
+
"blocking_failure": false,
|
| 50 |
+
"dependencies": "[]",
|
| 51 |
+
"passed": true,
|
| 52 |
+
"version": "0.1.0"
|
| 53 |
+
},
|
| 54 |
+
"FET_033_STANDARD": {
|
| 55 |
+
"blocking_failure": false,
|
| 56 |
+
"dependencies": "[{'FET_031_STANDARD': {'version': '0.1.0'}}]",
|
| 57 |
+
"passed": true,
|
| 58 |
+
"version": "0.4.0"
|
| 59 |
+
}
|
| 60 |
+
},
|
| 61 |
+
"profile_id": "AIF-Entity",
|
| 62 |
+
"profile_version": "0.2.0",
|
| 63 |
+
"simready_validate_version": "2026.8.0",
|
| 64 |
+
"tier_versions": {
|
| 65 |
+
"sensors": "2026.8.0",
|
| 66 |
+
"tier_aif": "2026.8.0",
|
| 67 |
+
"tier_core": "2026.8.0"
|
| 68 |
+
}
|
| 69 |
+
}
|
| 70 |
+
}
|
MCV430_12FAN_CONF/.metadata/com.nvidia.simready.conformance.Package@1.0.0.json
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"format_version": "1.0",
|
| 3 |
+
"profile": "Package",
|
| 4 |
+
"profile_version": "1.0.0",
|
| 5 |
+
"timestamp": "2026-10-22T15:03:21",
|
| 6 |
+
"assets": [
|
| 7 |
+
{
|
| 8 |
+
"asset": "com.nvidia.simready.packaging.json",
|
| 9 |
+
"features": [
|
| 10 |
+
{
|
| 11 |
+
"FET_030_STANDARD": {
|
| 12 |
+
"version": "0.1.0",
|
| 13 |
+
"passed": true,
|
| 14 |
+
"failing_requirements": [],
|
| 15 |
+
"dependencies": []
|
| 16 |
+
}
|
| 17 |
+
},
|
| 18 |
+
{
|
| 19 |
+
"FET_032_STANDARD": {
|
| 20 |
+
"version": "0.1.0",
|
| 21 |
+
"passed": true,
|
| 22 |
+
"failing_requirements": [],
|
| 23 |
+
"dependencies": [
|
| 24 |
+
{
|
| 25 |
+
"FET_030_STANDARD": {
|
| 26 |
+
"version": "0.1.0"
|
| 27 |
+
}
|
| 28 |
+
}
|
| 29 |
+
]
|
| 30 |
+
}
|
| 31 |
+
}
|
| 32 |
+
]
|
| 33 |
+
}
|
| 34 |
+
]
|
| 35 |
+
}
|
MCV430_12FAN_CONF/.metadata/com.nvidia.simready.packaging.bom.json
ADDED
|
@@ -0,0 +1,135 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"format_version": "1.0",
|
| 3 |
+
"items": [
|
| 4 |
+
{
|
| 5 |
+
"relative_path": "simready_usd/.simready/validation.json",
|
| 6 |
+
"size": 2837,
|
| 7 |
+
"hash": {
|
| 8 |
+
"sha256-flat-1mb": "6932001d4ecfcd27fbfbd56a116928054433aaa30cd42fda0a8861c5e66aac07",
|
| 9 |
+
"sha256": "67e950e64d2c8208c161985165e5d92c2cfc8f51d4ade18428b9c1606751e590"
|
| 10 |
+
}
|
| 11 |
+
},
|
| 12 |
+
{
|
| 13 |
+
"relative_path": "simready_usd/.thumbs/256x256/MCV430_12FAN_CONF_main.usd.png",
|
| 14 |
+
"size": 821690,
|
| 15 |
+
"hash": {
|
| 16 |
+
"sha256-flat-1mb": "fcbb803815d5041413d5f7079c102d7e10d3ee031be378703b0596fdacc049c3",
|
| 17 |
+
"sha256": "8031eb11e577992be41c4341f19d351b89444f5d5b46d2c766daa7549c7f8b55"
|
| 18 |
+
}
|
| 19 |
+
},
|
| 20 |
+
{
|
| 21 |
+
"relative_path": "simready_usd/.thumbs/256x256/MCV430_12FAN_CONF_main.usd_light.png",
|
| 22 |
+
"size": 735214,
|
| 23 |
+
"hash": {
|
| 24 |
+
"sha256-flat-1mb": "e10cf161b842ba61980e5044c93e245a85059624d92a61668563595ab7728281",
|
| 25 |
+
"sha256": "553e30fdf2c8125ca5256555d1b854a086fd00cf7ff334a996e76495a9750679"
|
| 26 |
+
}
|
| 27 |
+
},
|
| 28 |
+
{
|
| 29 |
+
"relative_path": "simready_usd/.thumbs/256x256/MCV430_12FAN_CONF_main.usd_transparent.png",
|
| 30 |
+
"size": 656465,
|
| 31 |
+
"hash": {
|
| 32 |
+
"sha256-flat-1mb": "b190475cf1dff38656963fe9a6f083423b4d768a6cfb6f0422d67ae9b18e2390",
|
| 33 |
+
"sha256": "95138e7eceba3101546267ea084c1b092ad41b1fde1779e26a0ba19f8eb085cf"
|
| 34 |
+
}
|
| 35 |
+
},
|
| 36 |
+
{
|
| 37 |
+
"relative_path": "simready_usd/MCV430_12FAN_CONF_main.usd",
|
| 38 |
+
"size": 46529,
|
| 39 |
+
"hash": {
|
| 40 |
+
"sha256-flat-1mb": "4daa956b49d65744e609d5c4f761dd78c3e14877ac82de95e683300e07cb6dad",
|
| 41 |
+
"sha256": "6646fdeb5b4e7d752b16769aa59179f2abe0d09e9086b67f1fc9bdb3bcb4c55f"
|
| 42 |
+
}
|
| 43 |
+
},
|
| 44 |
+
{
|
| 45 |
+
"relative_path": "simready_usd/layers/MCV430_12FAN_ConnectionPoints.usd",
|
| 46 |
+
"size": 18816,
|
| 47 |
+
"hash": {
|
| 48 |
+
"sha256-flat-1mb": "81683c4697bf9146a11da2e69605e836514f2b918d13a6394d64d7bce0ef226e",
|
| 49 |
+
"sha256": "710003b298638238901f5beb9b66abaa1d0825b9886ab436e1fcc0d1f45972b0"
|
| 50 |
+
}
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"relative_path": "simready_usd/layers/MCV430_12FAN_Properties.json",
|
| 54 |
+
"size": 12448,
|
| 55 |
+
"hash": {
|
| 56 |
+
"sha256-flat-1mb": "eb163fca6d67164e0f8f774bb453efe94ed08d8cbbaca8dbf4ffd88ac5af42cc",
|
| 57 |
+
"sha256": "b4a92ef2f1b69f802d6602286eab5856d4d49c1eae56d9423173a2e485ef7f74"
|
| 58 |
+
}
|
| 59 |
+
},
|
| 60 |
+
{
|
| 61 |
+
"relative_path": "simready_usd/layers/MCV430_12FAN_Properties.usda",
|
| 62 |
+
"size": 24020,
|
| 63 |
+
"hash": {
|
| 64 |
+
"sha256-flat-1mb": "d8b2e9a3e4d4e0795834083ac9e5d1611fc8647389c5203d34d4eb12fbe425cc",
|
| 65 |
+
"sha256": "8607f32adb412b736fb82a9750e655eb9f10c05fa0e9249296f3042f39779719"
|
| 66 |
+
}
|
| 67 |
+
},
|
| 68 |
+
{
|
| 69 |
+
"relative_path": "simready_usd/materials/Carpaint_Solid.mdl",
|
| 70 |
+
"size": 44585,
|
| 71 |
+
"hash": {
|
| 72 |
+
"sha256-flat-1mb": "26159d8a8bbbc4ea913351f189b2eb1146ab7c2e51d9a8285262ecb0ab2964d7",
|
| 73 |
+
"sha256": "e51996b5c78df239742fcf76ed3475002328afd0c5ba7922932bca89330a3b56"
|
| 74 |
+
}
|
| 75 |
+
},
|
| 76 |
+
{
|
| 77 |
+
"relative_path": "simready_usd/materials/Copper.mdl",
|
| 78 |
+
"size": 1955,
|
| 79 |
+
"hash": {
|
| 80 |
+
"sha256-flat-1mb": "f625fad1c60633648b634c72b937a277a804abb69ce546fa5fbccc175aeca562",
|
| 81 |
+
"sha256": "dba7ca7b478b0ed5ed1a2eba5fd6ef454dd397fec6b94c71d1891c54f3968095"
|
| 82 |
+
}
|
| 83 |
+
},
|
| 84 |
+
{
|
| 85 |
+
"relative_path": "simready_usd/materials/Metal_Black_Paint.mdl",
|
| 86 |
+
"size": 472,
|
| 87 |
+
"hash": {
|
| 88 |
+
"sha256-flat-1mb": "2913c552af80d4aa8da7de69ad928fd2f65a2dcc50a8722426eaa5bc2b87da2c",
|
| 89 |
+
"sha256": "5554e972ba934e04a95a98a0fa9d0d5c905692f8d40b13d898be0d94a650dca3"
|
| 90 |
+
}
|
| 91 |
+
},
|
| 92 |
+
{
|
| 93 |
+
"relative_path": "simready_usd/materials/Plastic_Thick_Translucent_Flakes.mdl",
|
| 94 |
+
"size": 38565,
|
| 95 |
+
"hash": {
|
| 96 |
+
"sha256-flat-1mb": "4d8ac1839c821db74c47be83a5a99bb2d13b0906ba5106009a9394caae030888",
|
| 97 |
+
"sha256": "31b2c2a907765c26b73ebbcc8666e2fb516f92fbbc546a49be496da9ba77eb54"
|
| 98 |
+
}
|
| 99 |
+
},
|
| 100 |
+
{
|
| 101 |
+
"relative_path": "simready_usd/materials/WhiteMode.mdl",
|
| 102 |
+
"size": 998,
|
| 103 |
+
"hash": {
|
| 104 |
+
"sha256-flat-1mb": "c07b0292c81dd4217326e9f2c755ff2d7ff470422fa974e6e03d907a2b62cc2f",
|
| 105 |
+
"sha256": "3bc76f53a19cada6acc1c4f9463264f0934f3dd45805cbe6af56c7b7df895b5d"
|
| 106 |
+
}
|
| 107 |
+
},
|
| 108 |
+
{
|
| 109 |
+
"relative_path": "simready_usd/payloads/external.usd",
|
| 110 |
+
"size": 22325427,
|
| 111 |
+
"hash": {
|
| 112 |
+
"sha256-flat-1mb": "3000c3989d65c757599957802f1bd527f4897343b2b4e55f264ca20a2d2d924b",
|
| 113 |
+
"sha256": "7f03307269c0d1854a4ec6f23cf6ad2e6c143ca50b762ee8781b87ff715e34a3",
|
| 114 |
+
"sha256-first1m": "143dfb443615bfce779e29b08e6985c9ae696fc67f61387c262fc171d0e193e7"
|
| 115 |
+
}
|
| 116 |
+
},
|
| 117 |
+
{
|
| 118 |
+
"relative_path": "simready_usd/payloads/internal.usd",
|
| 119 |
+
"size": 36159124,
|
| 120 |
+
"hash": {
|
| 121 |
+
"sha256-flat-1mb": "160aec654830ab5adff84b0b299645f9a198a15c91ecc76aa1e18639c1266c92",
|
| 122 |
+
"sha256": "45fd80545793af759559ef8c44d1300f0e3471333f780e90c1e4a57249c78452",
|
| 123 |
+
"sha256-first1m": "13f6f354912e2fba152cb8a0c2058e27f76b54537b39ba813e7e78e7ca522081"
|
| 124 |
+
}
|
| 125 |
+
},
|
| 126 |
+
{
|
| 127 |
+
"relative_path": "simready_usd/textures/ver_logo_tm_hrz_rgb_rev.png",
|
| 128 |
+
"size": 10575,
|
| 129 |
+
"hash": {
|
| 130 |
+
"sha256-flat-1mb": "8e9f4fed6ad9078bd072c34f5d0e6536dab1230150eae73f65ed78e50452684d",
|
| 131 |
+
"sha256": "12470a0a485caf4e7d3db06e5a6ae594a8e428e0d16f0a23fba23edd40f31273"
|
| 132 |
+
}
|
| 133 |
+
}
|
| 134 |
+
]
|
| 135 |
+
}
|
MCV430_12FAN_CONF/com.nvidia.simready.packaging.json
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"format_version": "1.0",
|
| 3 |
+
"package_id": "simready.hf.Vertiv.simready-assets.MCV430_12FAN_CONF.2026.10.22_00",
|
| 4 |
+
"license": "cc-by-4.0",
|
| 5 |
+
"metadata": [
|
| 6 |
+
{
|
| 7 |
+
"name": "com.nvidia.simready.packaging.bom.json",
|
| 8 |
+
"hash": {
|
| 9 |
+
"sha256": "67a12bce46542de96add65a3e86929acf432d1451a0025447b9f64a53c0af25c"
|
| 10 |
+
}
|
| 11 |
+
}
|
| 12 |
+
],
|
| 13 |
+
"content_hash": {
|
| 14 |
+
"sha256": "93c3b60b8ca200cf1a2fd4119afc3cd9f69070423ecfaec79fbeb06745ae2784"
|
| 15 |
+
},
|
| 16 |
+
"package_hash": {
|
| 17 |
+
"sha256": "e395c8731e85a3f8bc6752fd078d423d057302b8571b6aa9b72ef1e8b0d17e32"
|
| 18 |
+
}
|
| 19 |
+
}
|
MCV430_12FAN_CONF/simready_usd/.simready/validation.json
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"SimReady_Metadata": {
|
| 3 |
+
"validation": {
|
| 4 |
+
"profile": "AIF-Entity",
|
| 5 |
+
"profile_version": "0.2.0",
|
| 6 |
+
"validated_features": {
|
| 7 |
+
"2026-10-22": {
|
| 8 |
+
"FET200_AIF": {
|
| 9 |
+
"blocking_failure": true,
|
| 10 |
+
"dependencies": "[]",
|
| 11 |
+
"failing requirements": "['com.nvidia.simready.AM.007']",
|
| 12 |
+
"passed": false,
|
| 13 |
+
"requirement_messages": "{\"com.nvidia.simready.AM.007\": [\"No equipment class definition found for assetClass 'Cooling'. Defined classes: cdu, compute-rack, crah, ups.\"]}",
|
| 14 |
+
"version": "0.1.0"
|
| 15 |
+
},
|
| 16 |
+
"FET201_AIF": {
|
| 17 |
+
"blocking_failure": true,
|
| 18 |
+
"dependencies": "[{'FET200_AIF': {'version': '0.1.0'}}]",
|
| 19 |
+
"failing requirements": "['com.nvidia.simready.AM.007']",
|
| 20 |
+
"passed": false,
|
| 21 |
+
"requirement_messages": "{\"com.nvidia.simready.AM.007\": [\"No equipment class definition found for assetClass 'Cooling'. Defined classes: cdu, compute-rack, crah, ups.\"]}",
|
| 22 |
+
"version": "0.2.0"
|
| 23 |
+
},
|
| 24 |
+
"FET202_AIF": {
|
| 25 |
+
"blocking_failure": true,
|
| 26 |
+
"dependencies": "[{'FET201_AIF': {'version': '0.2.0'}}]",
|
| 27 |
+
"failing requirements": "['com.nvidia.simready.AM.007']",
|
| 28 |
+
"passed": false,
|
| 29 |
+
"requirement_messages": "{\"com.nvidia.simready.AM.007\": [\"No equipment class definition found for assetClass 'Cooling'. Defined classes: cdu, compute-rack, crah, ups.\"]}",
|
| 30 |
+
"version": "0.2.0"
|
| 31 |
+
},
|
| 32 |
+
"FET203_AIF": {
|
| 33 |
+
"blocking_failure": true,
|
| 34 |
+
"dependencies": "[{'FET201_AIF': {'version': '0.2.0'}}]",
|
| 35 |
+
"failing requirements": "['com.nvidia.simready.AM.007']",
|
| 36 |
+
"passed": false,
|
| 37 |
+
"requirement_messages": "{\"com.nvidia.simready.AM.007\": [\"No equipment class definition found for assetClass 'Cooling'. Defined classes: cdu, compute-rack, crah, ups.\"]}",
|
| 38 |
+
"version": "0.2.0"
|
| 39 |
+
},
|
| 40 |
+
"FET_000_STANDARD": {
|
| 41 |
+
"blocking_failure": false,
|
| 42 |
+
"dependencies": "[]",
|
| 43 |
+
"passed": true,
|
| 44 |
+
"version": "0.2.0"
|
| 45 |
+
},
|
| 46 |
+
"FET_001_STANDARD": {
|
| 47 |
+
"blocking_failure": false,
|
| 48 |
+
"dependencies": "[]",
|
| 49 |
+
"passed": true,
|
| 50 |
+
"version": "1.0.0"
|
| 51 |
+
},
|
| 52 |
+
"FET_031_STANDARD": {
|
| 53 |
+
"blocking_failure": false,
|
| 54 |
+
"dependencies": "[]",
|
| 55 |
+
"passed": true,
|
| 56 |
+
"version": "0.1.0"
|
| 57 |
+
},
|
| 58 |
+
"FET_033_STANDARD": {
|
| 59 |
+
"blocking_failure": false,
|
| 60 |
+
"dependencies": "[{'FET_031_STANDARD': {'version': '0.1.0'}}]",
|
| 61 |
+
"passed": true,
|
| 62 |
+
"version": "0.4.0"
|
| 63 |
+
}
|
| 64 |
+
}
|
| 65 |
+
}
|
| 66 |
+
}
|
| 67 |
+
}
|
| 68 |
+
}
|
MCV430_12FAN_CONF/simready_usd/.thumbs/256x256/MCV430_12FAN_CONF_main.usd.png
ADDED
|
|
Git LFS Details
|
MCV430_12FAN_CONF/simready_usd/.thumbs/256x256/MCV430_12FAN_CONF_main.usd_light.png
ADDED
|
|
Git LFS Details
|
MCV430_12FAN_CONF/simready_usd/.thumbs/256x256/MCV430_12FAN_CONF_main.usd_transparent.png
ADDED
|
|
Git LFS Details
|
MCV430_12FAN_CONF/simready_usd/MCV430_12FAN_CONF_main.usd
ADDED
|
Binary file (46.5 kB). View file
|
|
|
MCV430_12FAN_CONF/simready_usd/layers/MCV430_12FAN_ConnectionPoints.usd
ADDED
|
Binary file (18.8 kB). View file
|
|
|
MCV430_12FAN_CONF/simready_usd/layers/MCV430_12FAN_Properties.json
ADDED
|
@@ -0,0 +1,433 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"properties": {
|
| 3 |
+
"aif:spec:coolingType": {
|
| 4 |
+
"type": "string",
|
| 5 |
+
"value": "Air Cooled",
|
| 6 |
+
"description": "Primary Cooling type: Water/Glycol"
|
| 7 |
+
},
|
| 8 |
+
"aif:spec:mountStyle": {
|
| 9 |
+
"type": "string",
|
| 10 |
+
"value": "Floor Mount",
|
| 11 |
+
"description": "Mount Style: In Row, In Rack"
|
| 12 |
+
},
|
| 13 |
+
"aif:spec:unitFamily": {
|
| 14 |
+
"type": "string",
|
| 15 |
+
"value": "Microchannel Condenser",
|
| 16 |
+
"description": "Unit Family"
|
| 17 |
+
},
|
| 18 |
+
"aif:spec:platformSize": {
|
| 19 |
+
"type": "string",
|
| 20 |
+
"value": "V-Coil Arrangement",
|
| 21 |
+
"description": "Platform Size"
|
| 22 |
+
},
|
| 23 |
+
"aif:spec:nominalCapacity": {
|
| 24 |
+
"type": "int",
|
| 25 |
+
"value": 430,
|
| 26 |
+
"description": "Nominal Capacity in KW"
|
| 27 |
+
},
|
| 28 |
+
"aif:spec:fanType": {
|
| 29 |
+
"type": "string",
|
| 30 |
+
"value": "EC Fan",
|
| 31 |
+
"description": "Fan Type"
|
| 32 |
+
},
|
| 33 |
+
"aif:spec:controlType": {
|
| 34 |
+
"type": "string",
|
| 35 |
+
"value": "Premium Control",
|
| 36 |
+
"description": "Control Type"
|
| 37 |
+
},
|
| 38 |
+
"aif:spec:refrigerantCircuit": {
|
| 39 |
+
"type": "string",
|
| 40 |
+
"value": "Dual Refrigerant Circuit",
|
| 41 |
+
"description": "Refrigerant Circuit"
|
| 42 |
+
},
|
| 43 |
+
"aif:spec:refrigerantType": {
|
| 44 |
+
"type": "string",
|
| 45 |
+
"value": "R-410A",
|
| 46 |
+
"description": "Refrigerant Type"
|
| 47 |
+
},
|
| 48 |
+
"aif:spec:packaging": {
|
| 49 |
+
"type": "string",
|
| 50 |
+
"value": "Domestic,Non-Stackable",
|
| 51 |
+
"description": "Packaging"
|
| 52 |
+
},
|
| 53 |
+
"aif:spec:numberOfFans": {
|
| 54 |
+
"type": "int",
|
| 55 |
+
"value": 12,
|
| 56 |
+
"description": "Number of Fans"
|
| 57 |
+
},
|
| 58 |
+
"aif:spec:panelMaterial": {
|
| 59 |
+
"type": "string",
|
| 60 |
+
"value": "Galvanized Steel",
|
| 61 |
+
"description": "Panel Material"
|
| 62 |
+
},
|
| 63 |
+
"aif:spec:numberOfMCV": {
|
| 64 |
+
"type": "int",
|
| 65 |
+
"value": 2,
|
| 66 |
+
"description": "Number of MCV"
|
| 67 |
+
},
|
| 68 |
+
"aif:spec:refrigerantRequiredPerCircuit1": {
|
| 69 |
+
"type": "float",
|
| 70 |
+
"value": 28.1,
|
| 71 |
+
"description": "Refrigerant Required Per Circuit1 in Kg"
|
| 72 |
+
},
|
| 73 |
+
"aif:spec:refrigerantRequiredPerCircuit2": {
|
| 74 |
+
"type": "float",
|
| 75 |
+
"value": 28.1,
|
| 76 |
+
"description": "Refrigerant Required Per Circuit2 in Kg"
|
| 77 |
+
},
|
| 78 |
+
"aif:spec:fullLoadAmpereOfCondenser": {
|
| 79 |
+
"type": "float",
|
| 80 |
+
"value": 16.8,
|
| 81 |
+
"description": "Full Load Ampere of MCV Condenser in Amp"
|
| 82 |
+
},
|
| 83 |
+
"aif:spec:wireSizeAmpereOfCondenser": {
|
| 84 |
+
"type": "float",
|
| 85 |
+
"value": 17.5,
|
| 86 |
+
"description": "Wire Size Ampere of MCV Condenser in Amp"
|
| 87 |
+
},
|
| 88 |
+
"aif:spec:maximumOvercurrentProtectionDeviceOfCondenser": {
|
| 89 |
+
"type": "int",
|
| 90 |
+
"value": 20,
|
| 91 |
+
"description": "Maximum Overcurrent Protection Device of MCV Condenser in Amp"
|
| 92 |
+
},
|
| 93 |
+
"aif:spec:fullLoadAmpereOfHeatRejectionSkid": {
|
| 94 |
+
"type": "float",
|
| 95 |
+
"value": 23.8,
|
| 96 |
+
"description": "Full Load Ampere of Heat Rejection Skid in Amp"
|
| 97 |
+
},
|
| 98 |
+
"aif:spec:wireSizeAmpereOfHeatRejectionSkid": {
|
| 99 |
+
"type": "float",
|
| 100 |
+
"value": 24.7,
|
| 101 |
+
"description": "Wire Size Ampere of Heat Rejection Skid in Amp"
|
| 102 |
+
},
|
| 103 |
+
"aif:spec:maximumOvercurrentProtectionDeviceOfHeatRejectionSkid": {
|
| 104 |
+
"type": "int",
|
| 105 |
+
"value": 25,
|
| 106 |
+
"description": "Maximum Overcurrent Protection Device of Heat Rejection Skid in Amp"
|
| 107 |
+
},
|
| 108 |
+
"aif:spec:coolingCapacityCurve": {
|
| 109 |
+
"type": "string",
|
| 110 |
+
"value": "",
|
| 111 |
+
"description": "Cooling Capacity Curve Flow rate vs Cooling Capacity (5 points on curve required)"
|
| 112 |
+
},
|
| 113 |
+
"aif:spec:maximumOperatingPressure": {
|
| 114 |
+
"type": "string",
|
| 115 |
+
"value": "530 psig",
|
| 116 |
+
"description": "Maximum Operating pressure in Kpa"
|
| 117 |
+
},
|
| 118 |
+
"aif:spec:maximumRpmOfEcFan": {
|
| 119 |
+
"type": "int",
|
| 120 |
+
"value": 1200,
|
| 121 |
+
"description": "Maximum RPM of EC Fan"
|
| 122 |
+
},
|
| 123 |
+
"aif:spec:totalHeatDissipated": {
|
| 124 |
+
"type": "string",
|
| 125 |
+
"value": "",
|
| 126 |
+
"description": "Total heat dissipated [kW]"
|
| 127 |
+
},
|
| 128 |
+
"aif:spec:filterSizeCoolingCapacity": {
|
| 129 |
+
"type": "string",
|
| 130 |
+
"value": "",
|
| 131 |
+
"description": "Filter size [μ] for Cooling Capacity"
|
| 132 |
+
},
|
| 133 |
+
"aif:spec:workingFluidCoolingCapacity": {
|
| 134 |
+
"type": "string",
|
| 135 |
+
"value": "",
|
| 136 |
+
"description": "Working fluid for Cooling Capacity"
|
| 137 |
+
},
|
| 138 |
+
"aif:spec:nominalCoolingCapacity": {
|
| 139 |
+
"type": "int",
|
| 140 |
+
"value": 430,
|
| 141 |
+
"description": "Nominal Cooling Capacity in KW"
|
| 142 |
+
},
|
| 143 |
+
"aif:spec:electricalPhases": {
|
| 144 |
+
"type": "int",
|
| 145 |
+
"value": 3,
|
| 146 |
+
"description": "Electrical Phases"
|
| 147 |
+
},
|
| 148 |
+
"aif:spec:maximumCoolingCapacity": {
|
| 149 |
+
"type": "string",
|
| 150 |
+
"value": "",
|
| 151 |
+
"description": "Maximum Cooling Capacity"
|
| 152 |
+
},
|
| 153 |
+
"aif:spec:nominalFlow": {
|
| 154 |
+
"type": "string",
|
| 155 |
+
"value": "",
|
| 156 |
+
"description": "Nominal Flow 2x Pump Running in cubic meter/second"
|
| 157 |
+
},
|
| 158 |
+
"aif:spec:maximumFlow": {
|
| 159 |
+
"type": "string",
|
| 160 |
+
"value": "",
|
| 161 |
+
"description": "Maximum Flow 3x Pump Running in cubic meter/second"
|
| 162 |
+
},
|
| 163 |
+
"aif:spec:maxSpeed": {
|
| 164 |
+
"type": "string",
|
| 165 |
+
"value": "",
|
| 166 |
+
"description": "Max speed [Hz]"
|
| 167 |
+
},
|
| 168 |
+
"aif:spec:ratedSpeed": {
|
| 169 |
+
"type": "string",
|
| 170 |
+
"value": "",
|
| 171 |
+
"description": "Rated speed [Hz]"
|
| 172 |
+
},
|
| 173 |
+
"aif:spec:wettedMaterial": {
|
| 174 |
+
"type": "string",
|
| 175 |
+
"value": "Aluminium Coil",
|
| 176 |
+
"description": "Wetted Material for MCV"
|
| 177 |
+
},
|
| 178 |
+
"aif:spec:wettedMaterialFws": {
|
| 179 |
+
"type": "string",
|
| 180 |
+
"value": "",
|
| 181 |
+
"description": "Wetted Material List for FWS"
|
| 182 |
+
},
|
| 183 |
+
"aif:spec:communication": {
|
| 184 |
+
"type": "string",
|
| 185 |
+
"value": "CANbus",
|
| 186 |
+
"description": "Communication"
|
| 187 |
+
},
|
| 188 |
+
"aif:spec:communication2": {
|
| 189 |
+
"type": "string",
|
| 190 |
+
"value": "",
|
| 191 |
+
"description": "Communication2"
|
| 192 |
+
},
|
| 193 |
+
"aif:spec:nominalVoltage": {
|
| 194 |
+
"type": "int",
|
| 195 |
+
"value": 460,
|
| 196 |
+
"description": "Electrical Nominal Voltage in Volt"
|
| 197 |
+
},
|
| 198 |
+
"aif:spec:current": {
|
| 199 |
+
"type": "string",
|
| 200 |
+
"value": "",
|
| 201 |
+
"description": "Electrical Current"
|
| 202 |
+
},
|
| 203 |
+
"aif:spec:frequency": {
|
| 204 |
+
"type": "int",
|
| 205 |
+
"value": 60,
|
| 206 |
+
"description": "Electrical Frequency in Hz"
|
| 207 |
+
},
|
| 208 |
+
"aif:spec:powerRating": {
|
| 209 |
+
"type": "int",
|
| 210 |
+
"value": 430,
|
| 211 |
+
"description": "Electrical Power Rating in kW"
|
| 212 |
+
},
|
| 213 |
+
"aif:spec:powerFactor": {
|
| 214 |
+
"type": "string",
|
| 215 |
+
"value": "",
|
| 216 |
+
"description": "Electrical Power Factor"
|
| 217 |
+
},
|
| 218 |
+
"aif:spec:efficiency": {
|
| 219 |
+
"type": "string",
|
| 220 |
+
"value": "",
|
| 221 |
+
"description": "Electrical Efficiency"
|
| 222 |
+
},
|
| 223 |
+
"aif:spec:wiringMethod": {
|
| 224 |
+
"type": "string",
|
| 225 |
+
"value": "Wye / Delta",
|
| 226 |
+
"description": "Wiring Method"
|
| 227 |
+
},
|
| 228 |
+
"aif:spec:primarySupply1PipingConnection": {
|
| 229 |
+
"type": "float",
|
| 230 |
+
"value": 34.93,
|
| 231 |
+
"description": "Primary Supply 1 Piping Connection in mm"
|
| 232 |
+
},
|
| 233 |
+
"aif:spec:secondarySupply1PipingConnection": {
|
| 234 |
+
"type": "float",
|
| 235 |
+
"value": 34.93,
|
| 236 |
+
"description": "Secondary Supply 1 Piping Connection in mm"
|
| 237 |
+
},
|
| 238 |
+
"aif:spec:primaryReturn1PipingConnection": {
|
| 239 |
+
"type": "float",
|
| 240 |
+
"value": 41.28,
|
| 241 |
+
"description": "Primary Return 1 Piping Connection in mm"
|
| 242 |
+
},
|
| 243 |
+
"aif:spec:secondaryReturn1PipingConnection": {
|
| 244 |
+
"type": "float",
|
| 245 |
+
"value": 41.28,
|
| 246 |
+
"description": "Secondary Return 1 Piping Connection mm"
|
| 247 |
+
},
|
| 248 |
+
"aif:spec:ratedCableSize": {
|
| 249 |
+
"type": "string",
|
| 250 |
+
"value": "",
|
| 251 |
+
"description": "Rated Cable Size"
|
| 252 |
+
},
|
| 253 |
+
"aif:spec:ratedMaxPower": {
|
| 254 |
+
"type": "string",
|
| 255 |
+
"value": "",
|
| 256 |
+
"description": "Rated Max Power"
|
| 257 |
+
},
|
| 258 |
+
"aif:spec:breaker": {
|
| 259 |
+
"type": "string",
|
| 260 |
+
"value": "",
|
| 261 |
+
"description": "Breaker"
|
| 262 |
+
},
|
| 263 |
+
"aif:spec:fuse": {
|
| 264 |
+
"type": "string",
|
| 265 |
+
"value": "",
|
| 266 |
+
"description": "Fuse"
|
| 267 |
+
},
|
| 268 |
+
"aif:spec:disconnect": {
|
| 269 |
+
"type": "string",
|
| 270 |
+
"value": "",
|
| 271 |
+
"description": "Disconnect"
|
| 272 |
+
},
|
| 273 |
+
"aif:spec:motorSize": {
|
| 274 |
+
"type": "string",
|
| 275 |
+
"value": "",
|
| 276 |
+
"description": "Motor/Pump Size"
|
| 277 |
+
},
|
| 278 |
+
"aif:spec:motorPowerInfo": {
|
| 279 |
+
"type": "string",
|
| 280 |
+
"value": "",
|
| 281 |
+
"description": "Motor/Pump Power Info"
|
| 282 |
+
},
|
| 283 |
+
"aif:spec:ratedVoltageRotatingEquipment": {
|
| 284 |
+
"type": "string",
|
| 285 |
+
"value": "",
|
| 286 |
+
"description": "Rated Voltage Rotating Equipment"
|
| 287 |
+
},
|
| 288 |
+
"aif:spec:ratedHp": {
|
| 289 |
+
"type": "string",
|
| 290 |
+
"value": "",
|
| 291 |
+
"description": "Rated HP"
|
| 292 |
+
},
|
| 293 |
+
"aif:spec:powerFactorRotatingEquipment": {
|
| 294 |
+
"type": "string",
|
| 295 |
+
"value": "",
|
| 296 |
+
"description": "Power Factor Rotating Equipment"
|
| 297 |
+
},
|
| 298 |
+
"aif:spec:efficiencyRotatingEquipment": {
|
| 299 |
+
"type": "string",
|
| 300 |
+
"value": "",
|
| 301 |
+
"description": "Efficiency of Rotating Equipment"
|
| 302 |
+
},
|
| 303 |
+
"aif:core:productType": {
|
| 304 |
+
"type": "string",
|
| 305 |
+
"value": "High Density Microchannel Condenser",
|
| 306 |
+
"description": "Product Type"
|
| 307 |
+
},
|
| 308 |
+
"aif:core:modelNumber": {
|
| 309 |
+
"type": "string",
|
| 310 |
+
"value": "MCV430E2ADA001",
|
| 311 |
+
"description": "Equipment model number"
|
| 312 |
+
},
|
| 313 |
+
"aif:core:overallGeometryDimensions": {
|
| 314 |
+
"type": "vector3f",
|
| 315 |
+
"value": [
|
| 316 |
+
6725.0,
|
| 317 |
+
2572.0,
|
| 318 |
+
3138.0
|
| 319 |
+
],
|
| 320 |
+
"description": "Overall Geometry (WxDxH) (metric)"
|
| 321 |
+
},
|
| 322 |
+
"aif:core:dryWeight": {
|
| 323 |
+
"type": "int",
|
| 324 |
+
"value": 5425,
|
| 325 |
+
"description": "Dry Weight of Equipment in Kg"
|
| 326 |
+
},
|
| 327 |
+
"aif:core:height": {
|
| 328 |
+
"type": "int",
|
| 329 |
+
"value": 3138,
|
| 330 |
+
"description": "Equipment height in mm"
|
| 331 |
+
},
|
| 332 |
+
"aif:core:width": {
|
| 333 |
+
"type": "int",
|
| 334 |
+
"value": 6725,
|
| 335 |
+
"description": "Equipment width in mm"
|
| 336 |
+
},
|
| 337 |
+
"aif:core:depth": {
|
| 338 |
+
"type": "int",
|
| 339 |
+
"value": 2572,
|
| 340 |
+
"description": "Equipment depth in mm"
|
| 341 |
+
},
|
| 342 |
+
"aif:core:installationClearance": {
|
| 343 |
+
"type": "int",
|
| 344 |
+
"value": 914,
|
| 345 |
+
"description": "Installation Clearance in mm"
|
| 346 |
+
},
|
| 347 |
+
"aif:core:accessibilityRequirement": {
|
| 348 |
+
"type": "int",
|
| 349 |
+
"value": 914,
|
| 350 |
+
"description": "Accessibility clearance in mm"
|
| 351 |
+
},
|
| 352 |
+
"aif:core:assetVersion": {
|
| 353 |
+
"type": "float",
|
| 354 |
+
"value": 0.1,
|
| 355 |
+
"description": "Design Revision of Digital Twin Asset"
|
| 356 |
+
},
|
| 357 |
+
"aif:core:assetClass": {
|
| 358 |
+
"type": "string",
|
| 359 |
+
"value": "Cooling",
|
| 360 |
+
"description": "Class of AI Factory Equipment"
|
| 361 |
+
},
|
| 362 |
+
"aif:core:simreadyVersion": {
|
| 363 |
+
"type": "float",
|
| 364 |
+
"value": 0.1,
|
| 365 |
+
"description": "SimReady version"
|
| 366 |
+
},
|
| 367 |
+
"aif:core:sceneOptimizerVersion": {
|
| 368 |
+
"type": "string",
|
| 369 |
+
"value": "get_scene_optimizer_id()",
|
| 370 |
+
"description": "Scene Optimizer version"
|
| 371 |
+
},
|
| 372 |
+
"aif:core:assetValidatorVersion": {
|
| 373 |
+
"type": "string",
|
| 374 |
+
"value": "get_asset_validator_id()",
|
| 375 |
+
"description": "Asset Validator version"
|
| 376 |
+
},
|
| 377 |
+
"aif:core:assetDescription": {
|
| 378 |
+
"type": "string",
|
| 379 |
+
"value": "Vertiv Liebert MCV430 Microchannel Condenser",
|
| 380 |
+
"description": "Human Readable Description of Asset"
|
| 381 |
+
},
|
| 382 |
+
"aif:core:connectsToModelDocumentation": {
|
| 383 |
+
"type": "string",
|
| 384 |
+
"value": "",
|
| 385 |
+
"description": "Url to online documentation"
|
| 386 |
+
},
|
| 387 |
+
"aif:core:assetProductFamily": {
|
| 388 |
+
"type": "string",
|
| 389 |
+
"value": "Liebert MCV",
|
| 390 |
+
"description": "Product Family"
|
| 391 |
+
},
|
| 392 |
+
"aif:core:assetFanType": {
|
| 393 |
+
"type": "string",
|
| 394 |
+
"value": "EC (Electronically Commutated)",
|
| 395 |
+
"description": "Fan Type"
|
| 396 |
+
},
|
| 397 |
+
"aif:core:assetAirFlowDirections": {
|
| 398 |
+
"type": "string",
|
| 399 |
+
"value": "",
|
| 400 |
+
"description": ""
|
| 401 |
+
},
|
| 402 |
+
"aif:core:manufacturer": {
|
| 403 |
+
"type": "string",
|
| 404 |
+
"value": "Vertiv",
|
| 405 |
+
"description": "Equipment manufacturer name"
|
| 406 |
+
},
|
| 407 |
+
"aif:core:geometrympv": {
|
| 408 |
+
"type": "string",
|
| 409 |
+
"value": "",
|
| 410 |
+
"description": "Geometry_MPV"
|
| 411 |
+
},
|
| 412 |
+
"aif:core:aifthermal": {
|
| 413 |
+
"type": "string",
|
| 414 |
+
"value": "",
|
| 415 |
+
"description": "AIF_Thermal"
|
| 416 |
+
},
|
| 417 |
+
"aif:core:aifelectrical": {
|
| 418 |
+
"type": "string",
|
| 419 |
+
"value": "",
|
| 420 |
+
"description": "AIF_Electrical"
|
| 421 |
+
},
|
| 422 |
+
"aif:core:assetCreationDate": {
|
| 423 |
+
"type": "string",
|
| 424 |
+
"value": "2026-08-24 00:00:00",
|
| 425 |
+
"description": "Creation Date of Revision of Asset ISO 8601 format (YYYY-MM-DD)"
|
| 426 |
+
}
|
| 427 |
+
},
|
| 428 |
+
"metadata": {
|
| 429 |
+
"description": "AIF properties for USD equipment models",
|
| 430 |
+
"version": "1.0",
|
| 431 |
+
"created": "2025-12-02"
|
| 432 |
+
}
|
| 433 |
+
}
|
MCV430_12FAN_CONF/simready_usd/layers/MCV430_12FAN_Properties.usda
ADDED
|
@@ -0,0 +1,841 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#usda 1.0
|
| 2 |
+
(
|
| 3 |
+
defaultPrim = "MCV430_12FAN"
|
| 4 |
+
)
|
| 5 |
+
|
| 6 |
+
over "MCV430_12FAN"
|
| 7 |
+
{
|
| 8 |
+
custom int aif:core:accessibilityRequirement = 914 (
|
| 9 |
+
customData = {
|
| 10 |
+
dictionary omni = {
|
| 11 |
+
dictionary kit = {
|
| 12 |
+
bool locked = 1
|
| 13 |
+
}
|
| 14 |
+
}
|
| 15 |
+
}
|
| 16 |
+
doc = "Accessibility clearance in mm [AIF-MANAGED]"
|
| 17 |
+
)
|
| 18 |
+
custom string aif:core:aifelectrical = "" (
|
| 19 |
+
customData = {
|
| 20 |
+
dictionary omni = {
|
| 21 |
+
dictionary kit = {
|
| 22 |
+
bool locked = 1
|
| 23 |
+
}
|
| 24 |
+
}
|
| 25 |
+
}
|
| 26 |
+
doc = "AIF_Electrical [AIF-MANAGED]"
|
| 27 |
+
)
|
| 28 |
+
custom string aif:core:aifthermal = "" (
|
| 29 |
+
customData = {
|
| 30 |
+
dictionary omni = {
|
| 31 |
+
dictionary kit = {
|
| 32 |
+
bool locked = 1
|
| 33 |
+
}
|
| 34 |
+
}
|
| 35 |
+
}
|
| 36 |
+
doc = "AIF_Thermal [AIF-MANAGED]"
|
| 37 |
+
)
|
| 38 |
+
custom string aif:core:assetAirFlowDirections = "" (
|
| 39 |
+
customData = {
|
| 40 |
+
dictionary omni = {
|
| 41 |
+
dictionary kit = {
|
| 42 |
+
bool locked = 1
|
| 43 |
+
}
|
| 44 |
+
}
|
| 45 |
+
}
|
| 46 |
+
doc = "[AIF-MANAGED]"
|
| 47 |
+
)
|
| 48 |
+
custom string aif:core:assetClass = "Cooling" (
|
| 49 |
+
customData = {
|
| 50 |
+
dictionary omni = {
|
| 51 |
+
dictionary kit = {
|
| 52 |
+
bool locked = 1
|
| 53 |
+
}
|
| 54 |
+
}
|
| 55 |
+
}
|
| 56 |
+
doc = "Class of AI Factory Equipment [AIF-MANAGED]"
|
| 57 |
+
)
|
| 58 |
+
custom string aif:core:assetCreationDate = "2026-08-24" (
|
| 59 |
+
customData = {
|
| 60 |
+
dictionary omni = {
|
| 61 |
+
dictionary kit = {
|
| 62 |
+
bool locked = 1
|
| 63 |
+
}
|
| 64 |
+
}
|
| 65 |
+
}
|
| 66 |
+
doc = "Creation Date of Revision of Asset ISO 8601 format (YYYY-MM-DD) [AIF-MANAGED]"
|
| 67 |
+
)
|
| 68 |
+
custom string aif:core:assetDescription = "Vertiv Liebert MCV430 Microchannel Condenser" (
|
| 69 |
+
customData = {
|
| 70 |
+
dictionary omni = {
|
| 71 |
+
dictionary kit = {
|
| 72 |
+
bool locked = 1
|
| 73 |
+
}
|
| 74 |
+
}
|
| 75 |
+
}
|
| 76 |
+
doc = "Human Readable Description of Asset [AIF-MANAGED]"
|
| 77 |
+
)
|
| 78 |
+
custom string aif:core:assetFanType = "EC (Electronically Commutated)" (
|
| 79 |
+
customData = {
|
| 80 |
+
dictionary omni = {
|
| 81 |
+
dictionary kit = {
|
| 82 |
+
bool locked = 1
|
| 83 |
+
}
|
| 84 |
+
}
|
| 85 |
+
}
|
| 86 |
+
doc = "Fan Type [AIF-MANAGED]"
|
| 87 |
+
)
|
| 88 |
+
custom string aif:core:assetProductFamily = "Liebert MCV" (
|
| 89 |
+
customData = {
|
| 90 |
+
dictionary omni = {
|
| 91 |
+
dictionary kit = {
|
| 92 |
+
bool locked = 1
|
| 93 |
+
}
|
| 94 |
+
}
|
| 95 |
+
}
|
| 96 |
+
doc = "Product Family [AIF-MANAGED]"
|
| 97 |
+
)
|
| 98 |
+
custom string aif:core:assetValidatorVersion = "1.18.0" (
|
| 99 |
+
customData = {
|
| 100 |
+
dictionary omni = {
|
| 101 |
+
dictionary kit = {
|
| 102 |
+
bool locked = 1
|
| 103 |
+
}
|
| 104 |
+
}
|
| 105 |
+
}
|
| 106 |
+
doc = "Asset Validator version [AIF-MANAGED]"
|
| 107 |
+
)
|
| 108 |
+
custom float aif:core:assetVersion = 0.1 (
|
| 109 |
+
customData = {
|
| 110 |
+
dictionary omni = {
|
| 111 |
+
dictionary kit = {
|
| 112 |
+
bool locked = 1
|
| 113 |
+
}
|
| 114 |
+
}
|
| 115 |
+
}
|
| 116 |
+
doc = "Design Revision of Digital Twin Asset [AIF-MANAGED]"
|
| 117 |
+
)
|
| 118 |
+
custom string aif:core:connectsToModelDocumentation = "" (
|
| 119 |
+
customData = {
|
| 120 |
+
dictionary omni = {
|
| 121 |
+
dictionary kit = {
|
| 122 |
+
bool locked = 1
|
| 123 |
+
}
|
| 124 |
+
}
|
| 125 |
+
}
|
| 126 |
+
doc = "Url to online documentation [AIF-MANAGED]"
|
| 127 |
+
)
|
| 128 |
+
custom int aif:core:depth = 2572 (
|
| 129 |
+
customData = {
|
| 130 |
+
dictionary omni = {
|
| 131 |
+
dictionary kit = {
|
| 132 |
+
bool locked = 1
|
| 133 |
+
}
|
| 134 |
+
}
|
| 135 |
+
}
|
| 136 |
+
doc = "Equipment depth in mm [AIF-MANAGED]"
|
| 137 |
+
)
|
| 138 |
+
custom int aif:core:dryWeight = 5425 (
|
| 139 |
+
customData = {
|
| 140 |
+
dictionary omni = {
|
| 141 |
+
dictionary kit = {
|
| 142 |
+
bool locked = 1
|
| 143 |
+
}
|
| 144 |
+
}
|
| 145 |
+
}
|
| 146 |
+
doc = "Dry Weight of Equipment in Kg [AIF-MANAGED]"
|
| 147 |
+
)
|
| 148 |
+
custom string aif:core:geometrympv = "" (
|
| 149 |
+
customData = {
|
| 150 |
+
dictionary omni = {
|
| 151 |
+
dictionary kit = {
|
| 152 |
+
bool locked = 1
|
| 153 |
+
}
|
| 154 |
+
}
|
| 155 |
+
}
|
| 156 |
+
doc = "Geometry_MPV [AIF-MANAGED]"
|
| 157 |
+
)
|
| 158 |
+
custom int aif:core:height = 3138 (
|
| 159 |
+
customData = {
|
| 160 |
+
dictionary omni = {
|
| 161 |
+
dictionary kit = {
|
| 162 |
+
bool locked = 1
|
| 163 |
+
}
|
| 164 |
+
}
|
| 165 |
+
}
|
| 166 |
+
doc = "Equipment height in mm [AIF-MANAGED]"
|
| 167 |
+
)
|
| 168 |
+
custom int aif:core:installationClearance = 914 (
|
| 169 |
+
customData = {
|
| 170 |
+
dictionary omni = {
|
| 171 |
+
dictionary kit = {
|
| 172 |
+
bool locked = 1
|
| 173 |
+
}
|
| 174 |
+
}
|
| 175 |
+
}
|
| 176 |
+
doc = "Installation Clearance in mm [AIF-MANAGED]"
|
| 177 |
+
)
|
| 178 |
+
custom string aif:core:manufacturer = "Vertiv" (
|
| 179 |
+
customData = {
|
| 180 |
+
dictionary omni = {
|
| 181 |
+
dictionary kit = {
|
| 182 |
+
bool locked = 1
|
| 183 |
+
}
|
| 184 |
+
}
|
| 185 |
+
}
|
| 186 |
+
doc = "Equipment manufacturer name [AIF-MANAGED]"
|
| 187 |
+
)
|
| 188 |
+
custom string aif:core:modelNumber = "MCV430E2ADA001" (
|
| 189 |
+
customData = {
|
| 190 |
+
dictionary omni = {
|
| 191 |
+
dictionary kit = {
|
| 192 |
+
bool locked = 1
|
| 193 |
+
}
|
| 194 |
+
}
|
| 195 |
+
}
|
| 196 |
+
doc = "Equipment model number [AIF-MANAGED]"
|
| 197 |
+
)
|
| 198 |
+
custom vector3f aif:core:overallGeometryDimensions = (6725, 2572, 3138) (
|
| 199 |
+
customData = {
|
| 200 |
+
dictionary omni = {
|
| 201 |
+
dictionary kit = {
|
| 202 |
+
bool locked = 1
|
| 203 |
+
}
|
| 204 |
+
}
|
| 205 |
+
}
|
| 206 |
+
doc = "Overall Geometry (WxDxH) (metric) [AIF-MANAGED]"
|
| 207 |
+
)
|
| 208 |
+
custom string aif:core:productType = "High Density Microchannel Condenser" (
|
| 209 |
+
customData = {
|
| 210 |
+
dictionary omni = {
|
| 211 |
+
dictionary kit = {
|
| 212 |
+
bool locked = 1
|
| 213 |
+
}
|
| 214 |
+
}
|
| 215 |
+
}
|
| 216 |
+
doc = "Product Type [AIF-MANAGED]"
|
| 217 |
+
)
|
| 218 |
+
custom string aif:core:sceneOptimizerVersion = "110.1.0" (
|
| 219 |
+
customData = {
|
| 220 |
+
dictionary omni = {
|
| 221 |
+
dictionary kit = {
|
| 222 |
+
bool locked = 1
|
| 223 |
+
}
|
| 224 |
+
}
|
| 225 |
+
}
|
| 226 |
+
doc = "Scene Optimizer version [AIF-MANAGED]"
|
| 227 |
+
)
|
| 228 |
+
custom string aif:core:simreadyVersion = "0.2.0"
|
| 229 |
+
custom float aif:core:weight = 1
|
| 230 |
+
custom int aif:core:width = 6725 (
|
| 231 |
+
customData = {
|
| 232 |
+
dictionary omni = {
|
| 233 |
+
dictionary kit = {
|
| 234 |
+
bool locked = 1
|
| 235 |
+
}
|
| 236 |
+
}
|
| 237 |
+
}
|
| 238 |
+
doc = "Equipment width in mm [AIF-MANAGED]"
|
| 239 |
+
)
|
| 240 |
+
custom string aif:spec:breaker = "" (
|
| 241 |
+
customData = {
|
| 242 |
+
dictionary omni = {
|
| 243 |
+
dictionary kit = {
|
| 244 |
+
bool locked = 1
|
| 245 |
+
}
|
| 246 |
+
}
|
| 247 |
+
}
|
| 248 |
+
doc = "Breaker [AIF-MANAGED]"
|
| 249 |
+
)
|
| 250 |
+
custom string aif:spec:communication = "CANbus" (
|
| 251 |
+
customData = {
|
| 252 |
+
dictionary omni = {
|
| 253 |
+
dictionary kit = {
|
| 254 |
+
bool locked = 1
|
| 255 |
+
}
|
| 256 |
+
}
|
| 257 |
+
}
|
| 258 |
+
doc = "Communication [AIF-MANAGED]"
|
| 259 |
+
)
|
| 260 |
+
custom string aif:spec:communication2 = "" (
|
| 261 |
+
customData = {
|
| 262 |
+
dictionary omni = {
|
| 263 |
+
dictionary kit = {
|
| 264 |
+
bool locked = 1
|
| 265 |
+
}
|
| 266 |
+
}
|
| 267 |
+
}
|
| 268 |
+
doc = "Communication2 [AIF-MANAGED]"
|
| 269 |
+
)
|
| 270 |
+
custom string aif:spec:controlType = "Premium Control" (
|
| 271 |
+
customData = {
|
| 272 |
+
dictionary omni = {
|
| 273 |
+
dictionary kit = {
|
| 274 |
+
bool locked = 1
|
| 275 |
+
}
|
| 276 |
+
}
|
| 277 |
+
}
|
| 278 |
+
doc = "Control Type [AIF-MANAGED]"
|
| 279 |
+
)
|
| 280 |
+
custom string aif:spec:coolingCapacityCurve = "" (
|
| 281 |
+
customData = {
|
| 282 |
+
dictionary omni = {
|
| 283 |
+
dictionary kit = {
|
| 284 |
+
bool locked = 1
|
| 285 |
+
}
|
| 286 |
+
}
|
| 287 |
+
}
|
| 288 |
+
doc = "Cooling Capacity Curve Flow rate vs Cooling Capacity (5 points on curve required) [AIF-MANAGED]"
|
| 289 |
+
)
|
| 290 |
+
custom string aif:spec:coolingType = "Air Cooled" (
|
| 291 |
+
customData = {
|
| 292 |
+
dictionary omni = {
|
| 293 |
+
dictionary kit = {
|
| 294 |
+
bool locked = 1
|
| 295 |
+
}
|
| 296 |
+
}
|
| 297 |
+
}
|
| 298 |
+
doc = "Primary Cooling type: Water/Glycol [AIF-MANAGED]"
|
| 299 |
+
)
|
| 300 |
+
custom string aif:spec:current = "" (
|
| 301 |
+
customData = {
|
| 302 |
+
dictionary omni = {
|
| 303 |
+
dictionary kit = {
|
| 304 |
+
bool locked = 1
|
| 305 |
+
}
|
| 306 |
+
}
|
| 307 |
+
}
|
| 308 |
+
doc = "Electrical Current [AIF-MANAGED]"
|
| 309 |
+
)
|
| 310 |
+
custom string aif:spec:disconnect = "" (
|
| 311 |
+
customData = {
|
| 312 |
+
dictionary omni = {
|
| 313 |
+
dictionary kit = {
|
| 314 |
+
bool locked = 1
|
| 315 |
+
}
|
| 316 |
+
}
|
| 317 |
+
}
|
| 318 |
+
doc = "Disconnect [AIF-MANAGED]"
|
| 319 |
+
)
|
| 320 |
+
custom string aif:spec:efficiency = "" (
|
| 321 |
+
customData = {
|
| 322 |
+
dictionary omni = {
|
| 323 |
+
dictionary kit = {
|
| 324 |
+
bool locked = 1
|
| 325 |
+
}
|
| 326 |
+
}
|
| 327 |
+
}
|
| 328 |
+
doc = "Electrical Efficiency [AIF-MANAGED]"
|
| 329 |
+
)
|
| 330 |
+
custom string aif:spec:efficiencyRotatingEquipment = "" (
|
| 331 |
+
customData = {
|
| 332 |
+
dictionary omni = {
|
| 333 |
+
dictionary kit = {
|
| 334 |
+
bool locked = 1
|
| 335 |
+
}
|
| 336 |
+
}
|
| 337 |
+
}
|
| 338 |
+
doc = "Efficiency of Rotating Equipment [AIF-MANAGED]"
|
| 339 |
+
)
|
| 340 |
+
custom int aif:spec:electricalPhases = 3 (
|
| 341 |
+
customData = {
|
| 342 |
+
dictionary omni = {
|
| 343 |
+
dictionary kit = {
|
| 344 |
+
bool locked = 1
|
| 345 |
+
}
|
| 346 |
+
}
|
| 347 |
+
}
|
| 348 |
+
doc = "Electrical Phases [AIF-MANAGED]"
|
| 349 |
+
)
|
| 350 |
+
custom string aif:spec:fanType = "EC Fan" (
|
| 351 |
+
customData = {
|
| 352 |
+
dictionary omni = {
|
| 353 |
+
dictionary kit = {
|
| 354 |
+
bool locked = 1
|
| 355 |
+
}
|
| 356 |
+
}
|
| 357 |
+
}
|
| 358 |
+
doc = "Fan Type [AIF-MANAGED]"
|
| 359 |
+
)
|
| 360 |
+
custom string aif:spec:filterSizeCoolingCapacity = "" (
|
| 361 |
+
customData = {
|
| 362 |
+
dictionary omni = {
|
| 363 |
+
dictionary kit = {
|
| 364 |
+
bool locked = 1
|
| 365 |
+
}
|
| 366 |
+
}
|
| 367 |
+
}
|
| 368 |
+
doc = "Filter size [μ] for Cooling Capacity [AIF-MANAGED]"
|
| 369 |
+
)
|
| 370 |
+
custom int aif:spec:frequency = 60 (
|
| 371 |
+
customData = {
|
| 372 |
+
dictionary omni = {
|
| 373 |
+
dictionary kit = {
|
| 374 |
+
bool locked = 1
|
| 375 |
+
}
|
| 376 |
+
}
|
| 377 |
+
}
|
| 378 |
+
doc = "Electrical Frequency in Hz [AIF-MANAGED]"
|
| 379 |
+
)
|
| 380 |
+
custom float aif:spec:fullLoadAmpereOfCondenser = 16.8 (
|
| 381 |
+
customData = {
|
| 382 |
+
dictionary omni = {
|
| 383 |
+
dictionary kit = {
|
| 384 |
+
bool locked = 1
|
| 385 |
+
}
|
| 386 |
+
}
|
| 387 |
+
}
|
| 388 |
+
doc = "Full Load Ampere of MCV Condenser in Amp [AIF-MANAGED]"
|
| 389 |
+
)
|
| 390 |
+
custom float aif:spec:fullLoadAmpereOfHeatRejectionSkid = 23.8 (
|
| 391 |
+
customData = {
|
| 392 |
+
dictionary omni = {
|
| 393 |
+
dictionary kit = {
|
| 394 |
+
bool locked = 1
|
| 395 |
+
}
|
| 396 |
+
}
|
| 397 |
+
}
|
| 398 |
+
doc = "Full Load Ampere of Heat Rejection Skid in Amp [AIF-MANAGED]"
|
| 399 |
+
)
|
| 400 |
+
custom string aif:spec:fuse = "" (
|
| 401 |
+
customData = {
|
| 402 |
+
dictionary omni = {
|
| 403 |
+
dictionary kit = {
|
| 404 |
+
bool locked = 1
|
| 405 |
+
}
|
| 406 |
+
}
|
| 407 |
+
}
|
| 408 |
+
doc = "Fuse [AIF-MANAGED]"
|
| 409 |
+
)
|
| 410 |
+
custom string aif:spec:maximumCoolingCapacity = "" (
|
| 411 |
+
customData = {
|
| 412 |
+
dictionary omni = {
|
| 413 |
+
dictionary kit = {
|
| 414 |
+
bool locked = 1
|
| 415 |
+
}
|
| 416 |
+
}
|
| 417 |
+
}
|
| 418 |
+
doc = "Maximum Cooling Capacity [AIF-MANAGED]"
|
| 419 |
+
)
|
| 420 |
+
custom string aif:spec:maximumFlow = "" (
|
| 421 |
+
customData = {
|
| 422 |
+
dictionary omni = {
|
| 423 |
+
dictionary kit = {
|
| 424 |
+
bool locked = 1
|
| 425 |
+
}
|
| 426 |
+
}
|
| 427 |
+
}
|
| 428 |
+
doc = "Maximum Flow 3x Pump Running in cubic meter/second [AIF-MANAGED]"
|
| 429 |
+
)
|
| 430 |
+
custom string aif:spec:maximumOperatingPressure = "530 psig" (
|
| 431 |
+
customData = {
|
| 432 |
+
dictionary omni = {
|
| 433 |
+
dictionary kit = {
|
| 434 |
+
bool locked = 1
|
| 435 |
+
}
|
| 436 |
+
}
|
| 437 |
+
}
|
| 438 |
+
doc = "Maximum Operating pressure in Kpa [AIF-MANAGED]"
|
| 439 |
+
)
|
| 440 |
+
custom int aif:spec:maximumOvercurrentProtectionDeviceOfCondenser = 20 (
|
| 441 |
+
customData = {
|
| 442 |
+
dictionary omni = {
|
| 443 |
+
dictionary kit = {
|
| 444 |
+
bool locked = 1
|
| 445 |
+
}
|
| 446 |
+
}
|
| 447 |
+
}
|
| 448 |
+
doc = "Maximum Overcurrent Protection Device of MCV Condenser in Amp [AIF-MANAGED]"
|
| 449 |
+
)
|
| 450 |
+
custom int aif:spec:maximumOvercurrentProtectionDeviceOfHeatRejectionSkid = 25 (
|
| 451 |
+
customData = {
|
| 452 |
+
dictionary omni = {
|
| 453 |
+
dictionary kit = {
|
| 454 |
+
bool locked = 1
|
| 455 |
+
}
|
| 456 |
+
}
|
| 457 |
+
}
|
| 458 |
+
doc = "Maximum Overcurrent Protection Device of Heat Rejection Skid in Amp [AIF-MANAGED]"
|
| 459 |
+
)
|
| 460 |
+
custom int aif:spec:maximumRpmOfEcFan = 1200 (
|
| 461 |
+
customData = {
|
| 462 |
+
dictionary omni = {
|
| 463 |
+
dictionary kit = {
|
| 464 |
+
bool locked = 1
|
| 465 |
+
}
|
| 466 |
+
}
|
| 467 |
+
}
|
| 468 |
+
doc = "Maximum RPM of EC Fan [AIF-MANAGED]"
|
| 469 |
+
)
|
| 470 |
+
custom string aif:spec:maxSpeed = "" (
|
| 471 |
+
customData = {
|
| 472 |
+
dictionary omni = {
|
| 473 |
+
dictionary kit = {
|
| 474 |
+
bool locked = 1
|
| 475 |
+
}
|
| 476 |
+
}
|
| 477 |
+
}
|
| 478 |
+
doc = "Max speed [Hz] [AIF-MANAGED]"
|
| 479 |
+
)
|
| 480 |
+
custom string aif:spec:motorPowerInfo = "" (
|
| 481 |
+
customData = {
|
| 482 |
+
dictionary omni = {
|
| 483 |
+
dictionary kit = {
|
| 484 |
+
bool locked = 1
|
| 485 |
+
}
|
| 486 |
+
}
|
| 487 |
+
}
|
| 488 |
+
doc = "Motor/Pump Power Info [AIF-MANAGED]"
|
| 489 |
+
)
|
| 490 |
+
custom string aif:spec:motorSize = "" (
|
| 491 |
+
customData = {
|
| 492 |
+
dictionary omni = {
|
| 493 |
+
dictionary kit = {
|
| 494 |
+
bool locked = 1
|
| 495 |
+
}
|
| 496 |
+
}
|
| 497 |
+
}
|
| 498 |
+
doc = "Motor/Pump Size [AIF-MANAGED]"
|
| 499 |
+
)
|
| 500 |
+
custom string aif:spec:mountStyle = "Floor Mount" (
|
| 501 |
+
customData = {
|
| 502 |
+
dictionary omni = {
|
| 503 |
+
dictionary kit = {
|
| 504 |
+
bool locked = 1
|
| 505 |
+
}
|
| 506 |
+
}
|
| 507 |
+
}
|
| 508 |
+
doc = "Mount Style: In Row, In Rack [AIF-MANAGED]"
|
| 509 |
+
)
|
| 510 |
+
custom int aif:spec:nominalCapacity = 430 (
|
| 511 |
+
customData = {
|
| 512 |
+
dictionary omni = {
|
| 513 |
+
dictionary kit = {
|
| 514 |
+
bool locked = 1
|
| 515 |
+
}
|
| 516 |
+
}
|
| 517 |
+
}
|
| 518 |
+
doc = "Nominal Capacity in KW [AIF-MANAGED]"
|
| 519 |
+
)
|
| 520 |
+
custom int aif:spec:nominalCoolingCapacity = 430 (
|
| 521 |
+
customData = {
|
| 522 |
+
dictionary omni = {
|
| 523 |
+
dictionary kit = {
|
| 524 |
+
bool locked = 1
|
| 525 |
+
}
|
| 526 |
+
}
|
| 527 |
+
}
|
| 528 |
+
doc = "Nominal Cooling Capacity in KW [AIF-MANAGED]"
|
| 529 |
+
)
|
| 530 |
+
custom string aif:spec:nominalFlow = "" (
|
| 531 |
+
customData = {
|
| 532 |
+
dictionary omni = {
|
| 533 |
+
dictionary kit = {
|
| 534 |
+
bool locked = 1
|
| 535 |
+
}
|
| 536 |
+
}
|
| 537 |
+
}
|
| 538 |
+
doc = "Nominal Flow 2x Pump Running in cubic meter/second [AIF-MANAGED]"
|
| 539 |
+
)
|
| 540 |
+
custom int aif:spec:nominalVoltage = 460 (
|
| 541 |
+
customData = {
|
| 542 |
+
dictionary omni = {
|
| 543 |
+
dictionary kit = {
|
| 544 |
+
bool locked = 1
|
| 545 |
+
}
|
| 546 |
+
}
|
| 547 |
+
}
|
| 548 |
+
doc = "Electrical Nominal Voltage in Volt [AIF-MANAGED]"
|
| 549 |
+
)
|
| 550 |
+
custom int aif:spec:numberOfFans = 12 (
|
| 551 |
+
customData = {
|
| 552 |
+
dictionary omni = {
|
| 553 |
+
dictionary kit = {
|
| 554 |
+
bool locked = 1
|
| 555 |
+
}
|
| 556 |
+
}
|
| 557 |
+
}
|
| 558 |
+
doc = "Number of Fans [AIF-MANAGED]"
|
| 559 |
+
)
|
| 560 |
+
custom int aif:spec:numberOfMCV = 2 (
|
| 561 |
+
customData = {
|
| 562 |
+
dictionary omni = {
|
| 563 |
+
dictionary kit = {
|
| 564 |
+
bool locked = 1
|
| 565 |
+
}
|
| 566 |
+
}
|
| 567 |
+
}
|
| 568 |
+
doc = "Number of MCV [AIF-MANAGED]"
|
| 569 |
+
)
|
| 570 |
+
custom string aif:spec:packaging = "Domestic,Non-Stackable" (
|
| 571 |
+
customData = {
|
| 572 |
+
dictionary omni = {
|
| 573 |
+
dictionary kit = {
|
| 574 |
+
bool locked = 1
|
| 575 |
+
}
|
| 576 |
+
}
|
| 577 |
+
}
|
| 578 |
+
doc = "Packaging [AIF-MANAGED]"
|
| 579 |
+
)
|
| 580 |
+
custom string aif:spec:panelMaterial = "Galvanized Steel" (
|
| 581 |
+
customData = {
|
| 582 |
+
dictionary omni = {
|
| 583 |
+
dictionary kit = {
|
| 584 |
+
bool locked = 1
|
| 585 |
+
}
|
| 586 |
+
}
|
| 587 |
+
}
|
| 588 |
+
doc = "Panel Material [AIF-MANAGED]"
|
| 589 |
+
)
|
| 590 |
+
custom string aif:spec:platformSize = "V-Coil Arrangement" (
|
| 591 |
+
customData = {
|
| 592 |
+
dictionary omni = {
|
| 593 |
+
dictionary kit = {
|
| 594 |
+
bool locked = 1
|
| 595 |
+
}
|
| 596 |
+
}
|
| 597 |
+
}
|
| 598 |
+
doc = "Platform Size [AIF-MANAGED]"
|
| 599 |
+
)
|
| 600 |
+
custom string aif:spec:powerFactor = "" (
|
| 601 |
+
customData = {
|
| 602 |
+
dictionary omni = {
|
| 603 |
+
dictionary kit = {
|
| 604 |
+
bool locked = 1
|
| 605 |
+
}
|
| 606 |
+
}
|
| 607 |
+
}
|
| 608 |
+
doc = "Electrical Power Factor [AIF-MANAGED]"
|
| 609 |
+
)
|
| 610 |
+
custom string aif:spec:powerFactorRotatingEquipment = "" (
|
| 611 |
+
customData = {
|
| 612 |
+
dictionary omni = {
|
| 613 |
+
dictionary kit = {
|
| 614 |
+
bool locked = 1
|
| 615 |
+
}
|
| 616 |
+
}
|
| 617 |
+
}
|
| 618 |
+
doc = "Power Factor Rotating Equipment [AIF-MANAGED]"
|
| 619 |
+
)
|
| 620 |
+
custom int aif:spec:powerRating = 430 (
|
| 621 |
+
customData = {
|
| 622 |
+
dictionary omni = {
|
| 623 |
+
dictionary kit = {
|
| 624 |
+
bool locked = 1
|
| 625 |
+
}
|
| 626 |
+
}
|
| 627 |
+
}
|
| 628 |
+
doc = "Electrical Power Rating in kW [AIF-MANAGED]"
|
| 629 |
+
)
|
| 630 |
+
custom float aif:spec:primaryReturn1PipingConnection = 41.28 (
|
| 631 |
+
customData = {
|
| 632 |
+
dictionary omni = {
|
| 633 |
+
dictionary kit = {
|
| 634 |
+
bool locked = 1
|
| 635 |
+
}
|
| 636 |
+
}
|
| 637 |
+
}
|
| 638 |
+
doc = "Primary Return 1 Piping Connection in mm [AIF-MANAGED]"
|
| 639 |
+
)
|
| 640 |
+
custom float aif:spec:primarySupply1PipingConnection = 34.93 (
|
| 641 |
+
customData = {
|
| 642 |
+
dictionary omni = {
|
| 643 |
+
dictionary kit = {
|
| 644 |
+
bool locked = 1
|
| 645 |
+
}
|
| 646 |
+
}
|
| 647 |
+
}
|
| 648 |
+
doc = "Primary Supply 1 Piping Connection in mm [AIF-MANAGED]"
|
| 649 |
+
)
|
| 650 |
+
custom string aif:spec:ratedCableSize = "" (
|
| 651 |
+
customData = {
|
| 652 |
+
dictionary omni = {
|
| 653 |
+
dictionary kit = {
|
| 654 |
+
bool locked = 1
|
| 655 |
+
}
|
| 656 |
+
}
|
| 657 |
+
}
|
| 658 |
+
doc = "Rated Cable Size [AIF-MANAGED]"
|
| 659 |
+
)
|
| 660 |
+
custom string aif:spec:ratedHp = "" (
|
| 661 |
+
customData = {
|
| 662 |
+
dictionary omni = {
|
| 663 |
+
dictionary kit = {
|
| 664 |
+
bool locked = 1
|
| 665 |
+
}
|
| 666 |
+
}
|
| 667 |
+
}
|
| 668 |
+
doc = "Rated HP [AIF-MANAGED]"
|
| 669 |
+
)
|
| 670 |
+
custom string aif:spec:ratedMaxPower = "" (
|
| 671 |
+
customData = {
|
| 672 |
+
dictionary omni = {
|
| 673 |
+
dictionary kit = {
|
| 674 |
+
bool locked = 1
|
| 675 |
+
}
|
| 676 |
+
}
|
| 677 |
+
}
|
| 678 |
+
doc = "Rated Max Power [AIF-MANAGED]"
|
| 679 |
+
)
|
| 680 |
+
custom string aif:spec:ratedSpeed = "" (
|
| 681 |
+
customData = {
|
| 682 |
+
dictionary omni = {
|
| 683 |
+
dictionary kit = {
|
| 684 |
+
bool locked = 1
|
| 685 |
+
}
|
| 686 |
+
}
|
| 687 |
+
}
|
| 688 |
+
doc = "Rated speed [Hz] [AIF-MANAGED]"
|
| 689 |
+
)
|
| 690 |
+
custom string aif:spec:ratedVoltageRotatingEquipment = "" (
|
| 691 |
+
customData = {
|
| 692 |
+
dictionary omni = {
|
| 693 |
+
dictionary kit = {
|
| 694 |
+
bool locked = 1
|
| 695 |
+
}
|
| 696 |
+
}
|
| 697 |
+
}
|
| 698 |
+
doc = "Rated Voltage Rotating Equipment [AIF-MANAGED]"
|
| 699 |
+
)
|
| 700 |
+
custom string aif:spec:refrigerantCircuit = "Dual Refrigerant Circuit" (
|
| 701 |
+
customData = {
|
| 702 |
+
dictionary omni = {
|
| 703 |
+
dictionary kit = {
|
| 704 |
+
bool locked = 1
|
| 705 |
+
}
|
| 706 |
+
}
|
| 707 |
+
}
|
| 708 |
+
doc = "Refrigerant Circuit [AIF-MANAGED]"
|
| 709 |
+
)
|
| 710 |
+
custom float aif:spec:refrigerantRequiredPerCircuit1 = 28.1 (
|
| 711 |
+
customData = {
|
| 712 |
+
dictionary omni = {
|
| 713 |
+
dictionary kit = {
|
| 714 |
+
bool locked = 1
|
| 715 |
+
}
|
| 716 |
+
}
|
| 717 |
+
}
|
| 718 |
+
doc = "Refrigerant Required Per Circuit1 in Kg [AIF-MANAGED]"
|
| 719 |
+
)
|
| 720 |
+
custom float aif:spec:refrigerantRequiredPerCircuit2 = 28.1 (
|
| 721 |
+
customData = {
|
| 722 |
+
dictionary omni = {
|
| 723 |
+
dictionary kit = {
|
| 724 |
+
bool locked = 1
|
| 725 |
+
}
|
| 726 |
+
}
|
| 727 |
+
}
|
| 728 |
+
doc = "Refrigerant Required Per Circuit2 in Kg [AIF-MANAGED]"
|
| 729 |
+
)
|
| 730 |
+
custom string aif:spec:refrigerantType = "R-410A" (
|
| 731 |
+
customData = {
|
| 732 |
+
dictionary omni = {
|
| 733 |
+
dictionary kit = {
|
| 734 |
+
bool locked = 1
|
| 735 |
+
}
|
| 736 |
+
}
|
| 737 |
+
}
|
| 738 |
+
doc = "Refrigerant Type [AIF-MANAGED]"
|
| 739 |
+
)
|
| 740 |
+
custom float aif:spec:secondaryReturn1PipingConnection = 41.28 (
|
| 741 |
+
customData = {
|
| 742 |
+
dictionary omni = {
|
| 743 |
+
dictionary kit = {
|
| 744 |
+
bool locked = 1
|
| 745 |
+
}
|
| 746 |
+
}
|
| 747 |
+
}
|
| 748 |
+
doc = "Secondary Return 1 Piping Connection mm [AIF-MANAGED]"
|
| 749 |
+
)
|
| 750 |
+
custom float aif:spec:secondarySupply1PipingConnection = 34.93 (
|
| 751 |
+
customData = {
|
| 752 |
+
dictionary omni = {
|
| 753 |
+
dictionary kit = {
|
| 754 |
+
bool locked = 1
|
| 755 |
+
}
|
| 756 |
+
}
|
| 757 |
+
}
|
| 758 |
+
doc = "Secondary Supply 1 Piping Connection in mm [AIF-MANAGED]"
|
| 759 |
+
)
|
| 760 |
+
custom string aif:spec:totalHeatDissipated = "" (
|
| 761 |
+
customData = {
|
| 762 |
+
dictionary omni = {
|
| 763 |
+
dictionary kit = {
|
| 764 |
+
bool locked = 1
|
| 765 |
+
}
|
| 766 |
+
}
|
| 767 |
+
}
|
| 768 |
+
doc = "Total heat dissipated [kW] [AIF-MANAGED]"
|
| 769 |
+
)
|
| 770 |
+
custom string aif:spec:unitFamily = "Microchannel Condenser" (
|
| 771 |
+
customData = {
|
| 772 |
+
dictionary omni = {
|
| 773 |
+
dictionary kit = {
|
| 774 |
+
bool locked = 1
|
| 775 |
+
}
|
| 776 |
+
}
|
| 777 |
+
}
|
| 778 |
+
doc = "Unit Family [AIF-MANAGED]"
|
| 779 |
+
)
|
| 780 |
+
custom string aif:spec:wettedMaterial = "Aluminium Coil" (
|
| 781 |
+
customData = {
|
| 782 |
+
dictionary omni = {
|
| 783 |
+
dictionary kit = {
|
| 784 |
+
bool locked = 1
|
| 785 |
+
}
|
| 786 |
+
}
|
| 787 |
+
}
|
| 788 |
+
doc = "Wetted Material for MCV [AIF-MANAGED]"
|
| 789 |
+
)
|
| 790 |
+
custom string aif:spec:wettedMaterialFws = "" (
|
| 791 |
+
customData = {
|
| 792 |
+
dictionary omni = {
|
| 793 |
+
dictionary kit = {
|
| 794 |
+
bool locked = 1
|
| 795 |
+
}
|
| 796 |
+
}
|
| 797 |
+
}
|
| 798 |
+
doc = "Wetted Material List for FWS [AIF-MANAGED]"
|
| 799 |
+
)
|
| 800 |
+
custom float aif:spec:wireSizeAmpereOfCondenser = 17.5 (
|
| 801 |
+
customData = {
|
| 802 |
+
dictionary omni = {
|
| 803 |
+
dictionary kit = {
|
| 804 |
+
bool locked = 1
|
| 805 |
+
}
|
| 806 |
+
}
|
| 807 |
+
}
|
| 808 |
+
doc = "Wire Size Ampere of MCV Condenser in Amp [AIF-MANAGED]"
|
| 809 |
+
)
|
| 810 |
+
custom float aif:spec:wireSizeAmpereOfHeatRejectionSkid = 24.7 (
|
| 811 |
+
customData = {
|
| 812 |
+
dictionary omni = {
|
| 813 |
+
dictionary kit = {
|
| 814 |
+
bool locked = 1
|
| 815 |
+
}
|
| 816 |
+
}
|
| 817 |
+
}
|
| 818 |
+
doc = "Wire Size Ampere of Heat Rejection Skid in Amp [AIF-MANAGED]"
|
| 819 |
+
)
|
| 820 |
+
custom string aif:spec:wiringMethod = "Wye / Delta" (
|
| 821 |
+
customData = {
|
| 822 |
+
dictionary omni = {
|
| 823 |
+
dictionary kit = {
|
| 824 |
+
bool locked = 1
|
| 825 |
+
}
|
| 826 |
+
}
|
| 827 |
+
}
|
| 828 |
+
doc = "Wiring Method [AIF-MANAGED]"
|
| 829 |
+
)
|
| 830 |
+
custom string aif:spec:workingFluidCoolingCapacity = "" (
|
| 831 |
+
customData = {
|
| 832 |
+
dictionary omni = {
|
| 833 |
+
dictionary kit = {
|
| 834 |
+
bool locked = 1
|
| 835 |
+
}
|
| 836 |
+
}
|
| 837 |
+
}
|
| 838 |
+
doc = "Working fluid for Cooling Capacity [AIF-MANAGED]"
|
| 839 |
+
)
|
| 840 |
+
}
|
| 841 |
+
|
MCV430_12FAN_CONF/simready_usd/materials/Carpaint_Solid.mdl
ADDED
|
@@ -0,0 +1,1112 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/******************************************************************************
|
| 2 |
+
* Copyright 2023 NVIDIA Corporation. All rights reserved. *
|
| 3 |
+
******************************************************************************
|
| 4 |
+
|
| 5 |
+
Permission is hereby granted by NVIDIA Corporation ("NVIDIA"), free of charge,
|
| 6 |
+
to any person obtaining a copy of the sample definition code that uses our
|
| 7 |
+
Material Definition Language (the "MDL Materials"), to reproduce and distribute
|
| 8 |
+
the MDL Materials, including without limitation the rights to use, copy, merge,
|
| 9 |
+
publish, distribute, and sell modified and unmodified copies of the MDL
|
| 10 |
+
Materials, and to permit persons to whom the MDL Materials is furnished to do
|
| 11 |
+
so, in all cases solely for use with NVIDIA's Material Definition Language,
|
| 12 |
+
subject to the following further conditions:
|
| 13 |
+
|
| 14 |
+
1. The above copyright notices, this list of conditions, and the disclaimer
|
| 15 |
+
that follows shall be retained in all copies of one or more of the MDL
|
| 16 |
+
Materials, including in any software with which the MDL Materials are bundled,
|
| 17 |
+
redistributed, and/or sold, and included either as stand-alone text files,
|
| 18 |
+
human-readable headers or in the appropriate machine-readable metadata fields
|
| 19 |
+
within text or binary files as long as those fields can be easily viewed by the
|
| 20 |
+
user, as applicable.
|
| 21 |
+
2. The name of NVIDIA shall not be used to promote, endorse or advertise any
|
| 22 |
+
Modified Version without specific prior written permission, except a) to comply
|
| 23 |
+
with the notice requirements otherwise contained herein; or b) to acknowledge
|
| 24 |
+
the contribution(s) of NVIDIA.
|
| 25 |
+
|
| 26 |
+
THE MDL MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
| 27 |
+
OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY,
|
| 28 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT,
|
| 29 |
+
TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL NVIDIA CORPORATION BE LIABLE FOR
|
| 30 |
+
ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL,
|
| 31 |
+
INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF
|
| 32 |
+
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE
|
| 33 |
+
THE MDL MATERIALS OR FROM OTHER DEALINGS IN THE MDL MATERIALS.
|
| 34 |
+
*/
|
| 35 |
+
|
| 36 |
+
mdl 1.6;
|
| 37 |
+
import ::df::*;
|
| 38 |
+
import ::math::*;
|
| 39 |
+
import ::anno::*;
|
| 40 |
+
import ::state::*;
|
| 41 |
+
import ::base::*;
|
| 42 |
+
import ::tex::*;
|
| 43 |
+
import ::nvidia::core_definitions::dimension;
|
| 44 |
+
import ::nvidia::core_definitions::blend_colors;
|
| 45 |
+
|
| 46 |
+
|
| 47 |
+
const string COPYRIGHT =
|
| 48 |
+
" Copyright 2023 NVIDIA Corporation. All rights reserved.\n"
|
| 49 |
+
" MDL MATERIALS ARE PROVIDED PURSUANT TO AN END USER LICENSE AGREEMENT,\n"
|
| 50 |
+
" WHICH WAS ACCEPTED IN ORDER TO GAIN ACCESS TO THIS FILE. IN PARTICULAR,\n"
|
| 51 |
+
" THE MDL MATERIALS ARE PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n"
|
| 52 |
+
" EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF\n"
|
| 53 |
+
" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF\n"
|
| 54 |
+
" COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL NVIDIA\n"
|
| 55 |
+
" CORPORATION BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY\n"
|
| 56 |
+
" GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN\n"
|
| 57 |
+
" AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR\n"
|
| 58 |
+
" INABILITY TO USE THE MDL MATERIALS OR FROM OTHER DEALINGS IN THE MDL MATERIALS.\n";
|
| 59 |
+
|
| 60 |
+
|
| 61 |
+
::base::texture_coordinate_info transform_coordinate_2(
|
| 62 |
+
float4x4 transform
|
| 63 |
+
[[ ::anno::description("A transformation to be applied to the source coordinates. rotation_translation_scale() is a suggested means to compute the transformation matrix") ]],
|
| 64 |
+
::base::texture_coordinate_info coordinate = ::base::texture_coordinate_info()
|
| 65 |
+
[[ ::anno::description("Coordinate, typically sourced from coordinate_source or coordinate_projection") ]]
|
| 66 |
+
) [[
|
| 67 |
+
::anno::description("Transform a texture coordinate by a matrix") ,
|
| 68 |
+
::anno::noinline()
|
| 69 |
+
]]
|
| 70 |
+
{
|
| 71 |
+
// Version 2
|
| 72 |
+
float4 r_position = transform * float4(coordinate.position.x,coordinate.position.y,coordinate.position.z,1);
|
| 73 |
+
//Try aproximating it for the case that the rotation is only aroud z and assuming the texture layout is nice and z is ~constant.
|
| 74 |
+
//just pretend there is no other rotation happening
|
| 75 |
+
//get rid of scaling and translation. Then extract fields where sin and cos would be in a simple 2d transform around z.
|
| 76 |
+
float4 u = transform[0];
|
| 77 |
+
float3 ru = ::math::normalize(float3(u.x,u.y,u.z));
|
| 78 |
+
float cos = ru.x;
|
| 79 |
+
float sin = -ru.y;
|
| 80 |
+
|
| 81 |
+
return ::base::texture_coordinate_info(
|
| 82 |
+
float3(r_position.x,r_position.y,r_position.z),
|
| 83 |
+
::math::normalize(cos * coordinate.tangent_u - sin * coordinate.tangent_v),
|
| 84 |
+
::math::normalize(cos * coordinate.tangent_v + sin * coordinate.tangent_u));
|
| 85 |
+
}
|
| 86 |
+
|
| 87 |
+
// Takes the standard input that every material has. It combines a couple of
|
| 88 |
+
// functions in one convenience function.
|
| 89 |
+
::base::texture_coordinate_info vmat_transform(
|
| 90 |
+
float2 translation = float2(0.0f, 0.0f),
|
| 91 |
+
float rotation = 0.0f, // rotation in degrees
|
| 92 |
+
float2 scaling = float2(1.0f, 1.0f),
|
| 93 |
+
uniform ::base::texture_coordinate_system system = ::base::texture_coordinate_uvw,
|
| 94 |
+
uniform int uv_space = 0
|
| 95 |
+
)
|
| 96 |
+
{
|
| 97 |
+
float rotation_rad = (rotation * 3.1415926535897932384626433832f) / 180.f;
|
| 98 |
+
float4x4 scale =
|
| 99 |
+
float4x4(1.0f /scaling.x, 0.f , 0.f , 0.f,
|
| 100 |
+
0.f , 1.0f /scaling.y , 0.f , 0.f,
|
| 101 |
+
0.f , 0.f , 1.0f, 0.f,
|
| 102 |
+
translation.x , translation.y , 0.0f, 1.f);
|
| 103 |
+
|
| 104 |
+
float s = ::math::sin(rotation_rad);
|
| 105 |
+
float c = ::math::cos(rotation_rad);
|
| 106 |
+
float4x4 rotate =
|
| 107 |
+
float4x4( c , -s , 0.0f , 0.0f,
|
| 108 |
+
s , c , 0.0f , 0.0f,
|
| 109 |
+
0.0f, 0.0f , 1.0f , 0.0f,
|
| 110 |
+
0.f , 0.0f , 0.0f , 1.f);
|
| 111 |
+
|
| 112 |
+
return transform_coordinate_2(scale*rotate, ::base::coordinate_source(system, uv_space));
|
| 113 |
+
}
|
| 114 |
+
|
| 115 |
+
|
| 116 |
+
|
| 117 |
+
float histogram_range(float input, float range = 1.0f, float position = 0.5f)
|
| 118 |
+
{
|
| 119 |
+
float low = ::math::clamp(1.0f - ::math::min(((1.0f - position) + range * 0.5f), (1.0f - position) * 2), 0.0f, 1.0f);
|
| 120 |
+
float high = ::math::clamp(::math::min((position + range * 0.5f ), position * 2.0f), 0.0f, 1.0f);
|
| 121 |
+
return ::math::lerp(low, high, input);
|
| 122 |
+
}
|
| 123 |
+
|
| 124 |
+
//
|
| 125 |
+
// flake noise utilities
|
| 126 |
+
//
|
| 127 |
+
int hash(int seed, int i)
|
| 128 |
+
{
|
| 129 |
+
return (i ^ seed) * 1075385539;
|
| 130 |
+
}
|
| 131 |
+
int rnd_init(int3 pos)
|
| 132 |
+
{
|
| 133 |
+
return hash(hash(hash(0, pos.x), pos.y), pos.z);
|
| 134 |
+
}
|
| 135 |
+
|
| 136 |
+
int rnd_next(int seed) {
|
| 137 |
+
// xorshift32 using signed int
|
| 138 |
+
seed ^= seed << 13;
|
| 139 |
+
seed ^= seed >>> 17;
|
| 140 |
+
seed ^= seed << 5;
|
| 141 |
+
return seed;
|
| 142 |
+
}
|
| 143 |
+
|
| 144 |
+
float rnd_value(int seed)
|
| 145 |
+
{
|
| 146 |
+
//return ::math::abs(float(seed) * 4.6566fe-10f);
|
| 147 |
+
return ::math::abs(float(seed) * 0.00000000046566f);
|
| 148 |
+
}
|
| 149 |
+
|
| 150 |
+
// apply random rotation (using "Fast Random Rotation Matrices" by James Arvo)
|
| 151 |
+
float3 rotate_pos(float3 pos, float3 xi)
|
| 152 |
+
{
|
| 153 |
+
float theta = ::math::PI * 2.0f * xi.x;
|
| 154 |
+
float phi = ::math::PI * 2.0f * xi.y;
|
| 155 |
+
float z = xi.z * 2.0f;
|
| 156 |
+
|
| 157 |
+
float r = ::math::sqrt(z);
|
| 158 |
+
float[2] sp_cp = ::math::sincos(phi);
|
| 159 |
+
float Vx = sp_cp[0] * r;
|
| 160 |
+
float Vy = sp_cp[1] * r;
|
| 161 |
+
float Vz = ::math::sqrt(2.0f - z);
|
| 162 |
+
|
| 163 |
+
float[2] st_ct = ::math::sincos(theta);
|
| 164 |
+
float Sx = Vx * st_ct[1] - Vy * st_ct[0];
|
| 165 |
+
float Sy = Vx * st_ct[0] + Vy * st_ct[1];
|
| 166 |
+
|
| 167 |
+
float3x3 M(
|
| 168 |
+
Vx * Sx - st_ct[1], Vx * Sy - st_ct[0], Vx * Vz,
|
| 169 |
+
Vy * Sx + st_ct[0], Vy * Sy - st_ct[1], Vy * Vz,
|
| 170 |
+
Vz * Sx, Vz * Sy, 1.0f - z);
|
| 171 |
+
|
| 172 |
+
return M * pos;
|
| 173 |
+
}
|
| 174 |
+
|
| 175 |
+
struct flake_noise_value {
|
| 176 |
+
// flake priority (in [0..1], 0: no flake, flakes with higher priority shadow flakes "below" them)
|
| 177 |
+
float priority;
|
| 178 |
+
// Stores values from the functions (once normal, another time the color)
|
| 179 |
+
// current pseudo random number generator seed
|
| 180 |
+
int rnd_seed;
|
| 181 |
+
float4 carrier;
|
| 182 |
+
};
|
| 183 |
+
|
| 184 |
+
// flake noise function with controllable regularity, flake size, and probability
|
| 185 |
+
flake_noise_value flake_noise(
|
| 186 |
+
float3 pos,
|
| 187 |
+
float jitter_scale = 1.0f,
|
| 188 |
+
float flake_diameter = 0.75f,
|
| 189 |
+
float flake_probability = 1.0f)
|
| 190 |
+
{
|
| 191 |
+
float3 base_pos = ::math::floor(pos);
|
| 192 |
+
int3 base_pos_i = int3(base_pos);
|
| 193 |
+
|
| 194 |
+
// limit the flake size to the allowed maximum (such that looking at all neighbors is sufficient)
|
| 195 |
+
flake_diameter = ::math::min(flake_diameter, (1.5f - 0.5f * jitter_scale) / ::math::sqrt(3.0f));
|
| 196 |
+
|
| 197 |
+
flake_noise_value val(0.0f, 0, float4(0.0f));
|
| 198 |
+
|
| 199 |
+
for (int i = -1; i < 2; ++i) {
|
| 200 |
+
for (int j = -1; j < 2; ++j) {
|
| 201 |
+
for (int k = -1; k < 2; ++k) {
|
| 202 |
+
|
| 203 |
+
int seed = rnd_init(base_pos_i + int3(i, j, k));
|
| 204 |
+
|
| 205 |
+
seed = rnd_next(seed);
|
| 206 |
+
if (rnd_value(seed) > flake_probability)
|
| 207 |
+
continue;
|
| 208 |
+
|
| 209 |
+
seed = rnd_next(seed);
|
| 210 |
+
float priority = rnd_value(seed);
|
| 211 |
+
if (priority < val.priority)
|
| 212 |
+
continue;
|
| 213 |
+
|
| 214 |
+
float3 flake_pos = base_pos + float3(i, j, k) + float3(0.5f);
|
| 215 |
+
|
| 216 |
+
if (jitter_scale > 0.0f) {
|
| 217 |
+
seed = rnd_next(seed);
|
| 218 |
+
flake_pos.x += (rnd_value(seed) - 0.5f) * jitter_scale;
|
| 219 |
+
seed = rnd_next(seed);
|
| 220 |
+
flake_pos.y += (rnd_value(seed) - 0.5f) * jitter_scale;
|
| 221 |
+
seed = rnd_next(seed);
|
| 222 |
+
flake_pos.z += (rnd_value(seed) - 0.5f) * jitter_scale;
|
| 223 |
+
}
|
| 224 |
+
|
| 225 |
+
float3 p = pos - flake_pos;
|
| 226 |
+
if (::math::dot(p, p) >= flake_diameter * flake_diameter * 4.0f)
|
| 227 |
+
continue;
|
| 228 |
+
|
| 229 |
+
float3 xi_rot;
|
| 230 |
+
seed = rnd_next(seed);
|
| 231 |
+
xi_rot.x = rnd_value(seed);
|
| 232 |
+
seed = rnd_next(seed);
|
| 233 |
+
xi_rot.y = rnd_value(seed);
|
| 234 |
+
seed = rnd_next(seed);
|
| 235 |
+
xi_rot.z = rnd_value(seed);
|
| 236 |
+
p = rotate_pos(p, xi_rot);
|
| 237 |
+
|
| 238 |
+
if (::math::abs(p.x) <= flake_diameter &&
|
| 239 |
+
::math::abs(p.y) <= flake_diameter &&
|
| 240 |
+
::math::abs(p.z) <= flake_diameter)
|
| 241 |
+
{
|
| 242 |
+
val.priority = priority;
|
| 243 |
+
val.rnd_seed = seed;
|
| 244 |
+
}
|
| 245 |
+
}
|
| 246 |
+
}
|
| 247 |
+
}
|
| 248 |
+
|
| 249 |
+
return val;
|
| 250 |
+
}
|
| 251 |
+
|
| 252 |
+
// create a flake normal by importance sampling the Beckmann distribution with given roughness
|
| 253 |
+
flake_noise_value flake_normal(
|
| 254 |
+
flake_noise_value val,
|
| 255 |
+
float spread)
|
| 256 |
+
{
|
| 257 |
+
if (val.priority <= 0.0f)
|
| 258 |
+
{
|
| 259 |
+
val.carrier = float4(::state::normal().x, ::state::normal().y, ::state::normal().z, 1.0f);
|
| 260 |
+
return val;
|
| 261 |
+
}
|
| 262 |
+
|
| 263 |
+
int seed = rnd_next(val.rnd_seed);
|
| 264 |
+
float xi0 = rnd_value(seed);
|
| 265 |
+
seed = rnd_next(seed);
|
| 266 |
+
float xi1 = rnd_value(seed);
|
| 267 |
+
|
| 268 |
+
float phi = ::math::PI * 2.0f * xi0;
|
| 269 |
+
|
| 270 |
+
float roughness = spread * spread;
|
| 271 |
+
|
| 272 |
+
float tantheta = ::math::sqrt(-roughness * roughness * ::math::log(1.0f - xi1));
|
| 273 |
+
float sintheta = tantheta / ::math::sqrt(1.0f + tantheta * tantheta);
|
| 274 |
+
float costheta = ::math::sqrt(1.0f - sintheta * sintheta);
|
| 275 |
+
|
| 276 |
+
float[2] scphi = ::math::sincos(phi);
|
| 277 |
+
|
| 278 |
+
val.rnd_seed = seed;
|
| 279 |
+
|
| 280 |
+
float3 normal = ::state::texture_tangent_u(0) * scphi[1] * sintheta +
|
| 281 |
+
::state::texture_tangent_v(0) * scphi[0] * sintheta +
|
| 282 |
+
::state::normal() * costheta;
|
| 283 |
+
|
| 284 |
+
val.carrier = float4(normal.x, normal.y, normal.z, 1.0f);
|
| 285 |
+
|
| 286 |
+
|
| 287 |
+
return val;
|
| 288 |
+
}
|
| 289 |
+
|
| 290 |
+
|
| 291 |
+
export material Carpaint_Solid(
|
| 292 |
+
color base_color = color(0.002125f, 0.051269f, 0.046665f) [[
|
| 293 |
+
::anno::description("Sets the base color of the carpaint"),
|
| 294 |
+
::anno::display_name("Base "),
|
| 295 |
+
::anno::in_group("Appearance"),
|
| 296 |
+
::anno::ui_order(0)
|
| 297 |
+
]],
|
| 298 |
+
float ground_coat_influence = 0.9f [[
|
| 299 |
+
::anno::description("The ground coat layer is a metallic base layer over which the base color coat, the flakes and the clearcoat are applied. Use the parameter 'Ground Coat Brightness' to adjust its brightness."),
|
| 300 |
+
::anno::display_name("Base Coat Influence"),
|
| 301 |
+
::anno::in_group("Appearance"),
|
| 302 |
+
::anno::hard_range(0.f, 1.f),
|
| 303 |
+
::anno::ui_order(1)
|
| 304 |
+
]],
|
| 305 |
+
float ground_coat_brightness = 0.24f [[
|
| 306 |
+
::anno::description("Adjusts the brightness of the metallic ground coat over which the base color coat, the flakes and the clearcoat are applied. Only has an effect, if the Ground Coat Influence is greater than 0.0"),
|
| 307 |
+
::anno::display_name("Base Coat Brightness"),
|
| 308 |
+
::anno::in_group("Appearance"),
|
| 309 |
+
::anno::hard_range(0.f, 1.f),
|
| 310 |
+
::anno::ui_order(2)
|
| 311 |
+
]],
|
| 312 |
+
float edge_darkening = 0.96f [[
|
| 313 |
+
::anno::description("The amount how much colors fade to darker color when looking at the carpaint at grazing angles. Low values make the carpaint look more flat"),
|
| 314 |
+
::anno::display_name("Edge Darkening"),
|
| 315 |
+
::anno::in_group("Appearance"),
|
| 316 |
+
::anno::hard_range(0.f, 1.f),
|
| 317 |
+
::anno::ui_order(3)
|
| 318 |
+
]],
|
| 319 |
+
color flakes_tint = color(0.016807f, 0.171441f, 0.417885f) [[
|
| 320 |
+
::anno::description("The color of the flakes"),
|
| 321 |
+
::anno::display_name("Flakes Tint"),
|
| 322 |
+
::anno::in_group("Flakes"),
|
| 323 |
+
::anno::ui_order(4)
|
| 324 |
+
]],
|
| 325 |
+
uniform float flakes_density = 0.29f [[
|
| 326 |
+
::anno::description("Adjusts the density of the flakes. Lower number means less flake particles being applied."),
|
| 327 |
+
::anno::display_name("Flakes Density"),
|
| 328 |
+
::anno::in_group("Flakes"),
|
| 329 |
+
::anno::hard_range(0.f, 1.f),
|
| 330 |
+
::anno::ui_order(5)
|
| 331 |
+
]],
|
| 332 |
+
float spread = 0.12f [[
|
| 333 |
+
::anno::description("The amount how much flakes are pointing to random directions. It is strongly discouraged using a value of 0.0 as the flakes will be oriented exactly as the surface normal, which will result in an unnatural look. Higher values lead to a more scintillating look of the flakes."),
|
| 334 |
+
::anno::display_name("Flakes Spread"),
|
| 335 |
+
::anno::enable_if("flakes_density > 0.0f"),
|
| 336 |
+
::anno::in_group("Flakes"),
|
| 337 |
+
::anno::hard_range(0.f, 1.f),
|
| 338 |
+
::anno::ui_order(6)
|
| 339 |
+
]],
|
| 340 |
+
float flakes_roughness = 0.46f [[
|
| 341 |
+
::anno::description("The roughness of the flakes itself. Higher values smoothen out the look of the flakes. Depending on the flakes being used in carpaints, use low values for a sparkling flake effect while mica flakes tend to have a higher roughness, leading to a smoother more pearlescent look on the final carpaint"),
|
| 342 |
+
::anno::display_name("Flakes Roughness"),
|
| 343 |
+
::anno::enable_if("flakes_density > 0.0f"),
|
| 344 |
+
::anno::in_group("Flakes"),
|
| 345 |
+
::anno::hard_range(0.f, 1.f),
|
| 346 |
+
::anno::ui_order(7)
|
| 347 |
+
]],
|
| 348 |
+
float flakes_size = 0.1f [[
|
| 349 |
+
::anno::description("Size of the metal flakes in millimeters."),
|
| 350 |
+
::anno::display_name("Flakes Size (mm)"),
|
| 351 |
+
::anno::enable_if("flakes_density > 0.0f"),
|
| 352 |
+
::anno::soft_range(0.f, 1.f),
|
| 353 |
+
::anno::in_group("Flakes"),
|
| 354 |
+
::anno::ui_order(8)
|
| 355 |
+
]],
|
| 356 |
+
float candy_flip = 0.f [[
|
| 357 |
+
::anno::description("Changes the tint of the coating to fade towards the flake color to produce a candy paint effect. "),
|
| 358 |
+
::anno::display_name("Candy Coating"),
|
| 359 |
+
::anno::in_group("Flakes"),
|
| 360 |
+
::anno::hard_range(0.f, 1.f),
|
| 361 |
+
::anno::ui_order(9)
|
| 362 |
+
]],
|
| 363 |
+
float flake_layer_visibility = 0.f [[
|
| 364 |
+
::anno::description("Adjusts how much the flakes contribute to the final look. Lowering the value makes the flakes appear more transparent. At value of 0.0 no flakes are not rendered at all"),
|
| 365 |
+
::anno::display_name("Flakes Visibility"),
|
| 366 |
+
::anno::enable_if("flakes_density > 0.0f"),
|
| 367 |
+
::anno::in_group("Flakes"),
|
| 368 |
+
::anno::hard_range(0.f, 1.f),
|
| 369 |
+
::anno::ui_order(10)
|
| 370 |
+
]],
|
| 371 |
+
uniform texture_2d roughness_texture = texture_2d("./textures/smudges_scratches_A_rough.jpg", ::tex::gamma_linear) [[
|
| 372 |
+
::anno::description("Texture to use for adding variation to the roughness on the clearcoat"),
|
| 373 |
+
::anno::display_name("Roughness Texture"),
|
| 374 |
+
::anno::in_group("Clearcoat"),
|
| 375 |
+
::anno::ui_order(11)
|
| 376 |
+
]],
|
| 377 |
+
float clearcoat_rough = 0.f [[
|
| 378 |
+
::anno::description("The roughness of the clearcoat"),
|
| 379 |
+
::anno::display_name("Clearcoat Roughness"),
|
| 380 |
+
::anno::in_group("Clearcoat"),
|
| 381 |
+
::anno::hard_range(0.f, 1.f),
|
| 382 |
+
::anno::ui_order(12)
|
| 383 |
+
]],
|
| 384 |
+
float roughness_variation = 0.f [[
|
| 385 |
+
::anno::description("The amount of variation to apply to the roughness. This parameter only has an effect when the clearcoat roughness is not zero or one"),
|
| 386 |
+
::anno::display_name("Clearcoat Roughness Variation"),
|
| 387 |
+
::anno::in_group("Clearcoat"),
|
| 388 |
+
::anno::hard_range(0.f, 1.f),
|
| 389 |
+
::anno::ui_order(13)
|
| 390 |
+
]],
|
| 391 |
+
float clearcoat_ior = 1.600f [[
|
| 392 |
+
::anno::description("The index of refraction for the clearcoat layer"),
|
| 393 |
+
::anno::display_name("Clearcoat Index of Refraction"),
|
| 394 |
+
::anno::in_group("Clearcoat"),
|
| 395 |
+
::anno::soft_range(1.f, 3.f),
|
| 396 |
+
::anno::hard_range(1.f, 5.f),
|
| 397 |
+
::anno::ui_order(14)
|
| 398 |
+
]],
|
| 399 |
+
float clearcoat_visibility = 1.f [[
|
| 400 |
+
::anno::description("While the full value is the correct physical behavior of the clearcoat, lowering the value to reduce the amount of reflection for artistic purposes"),
|
| 401 |
+
::anno::display_name("Clearcoat Visibility"),
|
| 402 |
+
::anno::in_group("Clearcoat"),
|
| 403 |
+
::anno::hard_range(0.f, 1.f),
|
| 404 |
+
::anno::ui_order(15)
|
| 405 |
+
]],
|
| 406 |
+
uniform float orange_peel_strength = 0.f [[
|
| 407 |
+
::anno::description("Strength of the bump mapping effect"),
|
| 408 |
+
::anno::display_name("Coat Orange Peel Strength"),
|
| 409 |
+
::anno::in_group("Clearcoat"),
|
| 410 |
+
::anno::soft_range(0.f, 1.f),
|
| 411 |
+
::anno::hard_range(0.f, 1.f),
|
| 412 |
+
::anno::ui_order(16)
|
| 413 |
+
]],
|
| 414 |
+
uniform float orange_peel_size = 1.f [[
|
| 415 |
+
::anno::description("Size of the biggest feature of the pattern"),
|
| 416 |
+
::anno::display_name("Coat Orange Peel Size"),
|
| 417 |
+
::anno::soft_range(0.f, 1.f),
|
| 418 |
+
::anno::in_group("Clearcoat"),
|
| 419 |
+
::anno::ui_order(17)
|
| 420 |
+
]],
|
| 421 |
+
float2 texture_translate = float2(0.f) [[
|
| 422 |
+
::anno::description("Controls the position of the texture."),
|
| 423 |
+
::anno::display_name("Texture Translate"),
|
| 424 |
+
::anno::in_group("Transform"),
|
| 425 |
+
::anno::ui_order(18)
|
| 426 |
+
]],
|
| 427 |
+
float texture_rotate = 0.f [[
|
| 428 |
+
::anno::description("Rotates angle of the texture in degrees."),
|
| 429 |
+
::anno::display_name("Texture Rotate"),
|
| 430 |
+
::anno::in_group("Transform"),
|
| 431 |
+
::anno::soft_range(0.f, 360.f),
|
| 432 |
+
::anno::ui_order(19)
|
| 433 |
+
]],
|
| 434 |
+
float2 texture_scale = float2(1.f) [[
|
| 435 |
+
::anno::description("Larger numbers increase the size."),
|
| 436 |
+
::anno::display_name("Texture Scale"),
|
| 437 |
+
::anno::in_group("Transform"),
|
| 438 |
+
::nvidia::core_definitions::dimension(float2(1.0, 1.0)),
|
| 439 |
+
::anno::ui_order(20)
|
| 440 |
+
]],
|
| 441 |
+
uniform bool roundcorners_enable = false [[
|
| 442 |
+
::anno::description("Enables the round corneer effect. Comes at a slight performance cost as additional raytracing calls are rquired to evaluate the round corner effect"),
|
| 443 |
+
::anno::display_name("Enable Round Corners"),
|
| 444 |
+
::anno::in_group("Round Corners"),
|
| 445 |
+
::anno::ui_order(22)
|
| 446 |
+
]],
|
| 447 |
+
uniform float roundcorners_radius_mm = 1.5f [[
|
| 448 |
+
::anno::description("Radius of the rounded corners in millimeters"),
|
| 449 |
+
::anno::display_name("Round Corner Radius (mm)"),
|
| 450 |
+
::anno::in_group("Round Corners"),
|
| 451 |
+
::anno::soft_range(0.f, 10.f),
|
| 452 |
+
::anno::ui_order(23)
|
| 453 |
+
]],
|
| 454 |
+
uniform bool roundcorners_across_materials = false [[
|
| 455 |
+
::anno::description("Applies the round corner effect across different materials when enabled."),
|
| 456 |
+
::anno::display_name("Across Materials"),
|
| 457 |
+
::anno::in_group("Round Corners"),
|
| 458 |
+
::anno::ui_order(27)
|
| 459 |
+
]],
|
| 460 |
+
uniform int uv_space_index = 0 [[
|
| 461 |
+
::anno::description("Use selected UV space for material."),
|
| 462 |
+
::anno::display_name("UV Space Index"),
|
| 463 |
+
::anno::in_group("Advanced"),
|
| 464 |
+
::anno::ui_order(28)
|
| 465 |
+
]]
|
| 466 |
+
|
| 467 |
+
|
| 468 |
+
)
|
| 469 |
+
[[
|
| 470 |
+
::anno::author("NVIDIA"),
|
| 471 |
+
::anno::display_name("Carpaint Solid"),
|
| 472 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 473 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "clearcoat", "automotive", "design")),
|
| 474 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Carpaint_Solid.png"),
|
| 475 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 476 |
+
]]
|
| 477 |
+
=
|
| 478 |
+
let {
|
| 479 |
+
bool tmp0 = false;
|
| 480 |
+
// Tried Scaling factors for flakes to fit 1mm size both in Substance Designer and (Iray for) Rhino
|
| 481 |
+
// Rhino scaling factor: 1492.537313432835
|
| 482 |
+
// Substance Designer Scaling factor: 1158.6829010512
|
| 483 |
+
float flakes_size_m = (1492.537313432835f/flakes_size); // Flake scaling adjustment, so that flake size is in mm
|
| 484 |
+
float flake_layer_visibility_m = 1.0f - flake_layer_visibility;
|
| 485 |
+
|
| 486 |
+
::base::texture_coordinate_info coord_info = ::base::coordinate_source(::base::texture_coordinate_object, 0);
|
| 487 |
+
|
| 488 |
+
float scale_trans = ::state::transform_scale(::state::coordinate_object, ::state::coordinate_world, 1.0f);
|
| 489 |
+
|
| 490 |
+
float3 source_coord = coord_info.position * ::state::meters_per_scene_unit() * scale_trans;
|
| 491 |
+
|
| 492 |
+
::base::texture_coordinate_info transformed_coord = ::base::transform_coordinate(
|
| 493 |
+
::base::rotation_translation_scale(float3(0.0f), float3(0.0f), float3(scale_trans)),
|
| 494 |
+
coord_info
|
| 495 |
+
);
|
| 496 |
+
|
| 497 |
+
material_surface tmp1(::df::fresnel_layer(clearcoat_ior, clearcoat_visibility, ::df::simple_glossy_bsdf(histogram_range(::base::file_texture(roughness_texture, 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, ::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, roughness_variation, clearcoat_rough) * histogram_range(::base::file_texture(roughness_texture, 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, ::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, roughness_variation, clearcoat_rough), histogram_range(::base::file_texture(roughness_texture, 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, ::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, roughness_variation, clearcoat_rough) * histogram_range(::base::file_texture(roughness_texture, 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, ::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, roughness_variation, clearcoat_rough), nvidia::core_definitions::blend_colors(color(1.f, 1.f, 1.f), flakes_tint, ::base::color_layer_blend, candy_flip).tint, nvidia::core_definitions::blend_colors(color(1.f, 1.f, 1.f), flakes_tint, ::base::color_layer_blend, candy_flip).tint, ::state::texture_tangent_u(0), ::df::scatter_reflect), ::df::directional_factor(color(1.f, 1.f, 1.f), color(1.f - edge_darkening), 1.f, flakes_density > 0.f ? ::df::weighted_layer(::math::lerp(flake_noise(source_coord * flakes_size_m, 0.5f, 1.f, flakes_density * flakes_density).priority > 0.001f ? 1.0f : 0.0f , 0.f, flake_layer_visibility_m), ::df::microfacet_ggx_smith_bsdf(flakes_roughness * 0.340000004f, flakes_roughness * 0.340000004f, flakes_tint, color(0.f, 0.f, 0.f), ::state::texture_tangent_u(0), ::df::scatter_reflect), ::df::directional_factor(base_color, color(1.f - edge_darkening), 1.f, ::df::weighted_layer(ground_coat_influence * 0.5f, ::df::microfacet_ggx_vcavities_bsdf(0.40959999f, 0.40959999f, color(ground_coat_brightness * 0.949999988f + 0.0500000007f), color(ground_coat_brightness * 0.949999988f + 0.0500000007f), ::state::texture_tangent_u(0), ::df::scatter_reflect), ::df::diffuse_reflection_bsdf(base_color, 0.f), ::state::normal())), float3(flake_normal(flake_noise(source_coord * flakes_size_m, 0.5f, 1.f, flakes_density * flakes_density ), spread).carrier.x, flake_normal(flake_noise(source_coord * flakes_size_m, 0.5f, 1.f, flakes_density * flakes_density ), spread).carrier.y, flake_normal(flake_noise(source_coord * flakes_size_m, 0.5f, 1.f, flakes_density * flakes_density ), spread).carrier.z)) : ::df::directional_factor(base_color, color(1.f - edge_darkening), 1.f, ::df::weighted_layer(ground_coat_influence * 0.5f, ::df::microfacet_ggx_vcavities_bsdf(0.40959999f, 0.40959999f, color(ground_coat_brightness * 0.949999988f + 0.0500000007f), color(ground_coat_brightness * 0.949999988f + 0.0500000007f), ::state::texture_tangent_u(0), ::df::scatter_reflect), ::df::diffuse_reflection_bsdf(base_color, 0.f), ::state::normal()))), orange_peel_strength > 0.f ? ::base::perlin_noise_bump_texture(transformed_coord, orange_peel_strength, orange_peel_size, false, false, 0.f, 2, false, false, float3(0.f), 1.f, 0.f, 1.f, ::state::normal()) : ::state::normal()), material_emission(emission: edf(), intensity: color(0.f, 0.f, 0.f), mode: intensity_radiant_exitance));
|
| 498 |
+
material_surface tmp2 = material_surface(scattering: bsdf(), emission: material_emission(emission: edf(), intensity: color(0.f, 0.f, 0.f), mode: intensity_radiant_exitance));
|
| 499 |
+
color tmp3 = color(1.f, 1.f, 1.f);
|
| 500 |
+
material_volume tmp4 = material_volume(scattering: vdf(), absorption_coefficient: color(0.f, 0.f, 0.f), scattering_coefficient: color(0.f, 0.f, 0.f));
|
| 501 |
+
material_geometry tmp5(float3(0.f), 1.f, roundcorners_enable ? ::state::rounded_corner_normal(roundcorners_radius_mm * 0.00100000005f, roundcorners_across_materials, 1.f) : ::state::normal());
|
| 502 |
+
hair_bsdf tmp6 = hair_bsdf();
|
| 503 |
+
} in
|
| 504 |
+
material(
|
| 505 |
+
thin_walled: tmp0,
|
| 506 |
+
surface: tmp1,
|
| 507 |
+
backface: tmp2,
|
| 508 |
+
ior: tmp3,
|
| 509 |
+
volume: tmp4,
|
| 510 |
+
geometry: tmp5,
|
| 511 |
+
hair: tmp6);
|
| 512 |
+
|
| 513 |
+
|
| 514 |
+
// ------------------- 2 (Plain White) -------------------
|
| 515 |
+
export material White(*)
|
| 516 |
+
[[
|
| 517 |
+
::anno::author("NVIDIA"),
|
| 518 |
+
::anno::display_name("Carpaint Solid - White"),
|
| 519 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 520 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "white", "light", "neutral")),
|
| 521 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.White.png"),
|
| 522 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 523 |
+
]]
|
| 524 |
+
= Carpaint_Solid(
|
| 525 |
+
base_color: color(0.768151f, 0.768151f, 0.768151f),
|
| 526 |
+
ground_coat_influence: 0.0f,
|
| 527 |
+
ground_coat_brightness: 0.24f,
|
| 528 |
+
edge_darkening: 0.56f,
|
| 529 |
+
flakes_tint: color(0.552011f, 0.552011f, 0.552011f),
|
| 530 |
+
flakes_density: 0.0f,
|
| 531 |
+
spread: 0.47f,
|
| 532 |
+
flakes_roughness: 0.34f,
|
| 533 |
+
flakes_size: 0.5f,
|
| 534 |
+
candy_flip: 0.0f,
|
| 535 |
+
flake_layer_visibility: 1.0f,
|
| 536 |
+
// roughness_texture:
|
| 537 |
+
clearcoat_rough: 0.05f,
|
| 538 |
+
roughness_variation: 0.34f,
|
| 539 |
+
clearcoat_ior: 1.6f,
|
| 540 |
+
clearcoat_visibility: 1.0f,
|
| 541 |
+
orange_peel_strength: 0.0f,
|
| 542 |
+
orange_peel_size: 0.01f
|
| 543 |
+
);
|
| 544 |
+
|
| 545 |
+
// ------------------- 3 (vintage White) -------------------
|
| 546 |
+
export material Vintage_White(*)
|
| 547 |
+
[[
|
| 548 |
+
::anno::author("NVIDIA"),
|
| 549 |
+
::anno::display_name("Carpaint Solid - Vintage White"),
|
| 550 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 551 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "vintage", "white", "light", "neutral")),
|
| 552 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Vintage_White.png"),
|
| 553 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 554 |
+
]]
|
| 555 |
+
= Carpaint_Solid(
|
| 556 |
+
base_color: color(0.672443f, 0.630757f, 0.502886f),
|
| 557 |
+
ground_coat_influence: 0.0f,
|
| 558 |
+
ground_coat_brightness: 0.24f,
|
| 559 |
+
edge_darkening: 0.28f,
|
| 560 |
+
flakes_tint: color(0.603827f, 0.665387f, 0.693872f),
|
| 561 |
+
flakes_density: 0.0f,
|
| 562 |
+
spread: 0.41f,
|
| 563 |
+
flakes_roughness: 0.32f,
|
| 564 |
+
flakes_size: 0.5f,
|
| 565 |
+
candy_flip: 0.0f,
|
| 566 |
+
flake_layer_visibility: 0.0f,
|
| 567 |
+
// roughness_texture:
|
| 568 |
+
clearcoat_rough: 0.05f,
|
| 569 |
+
roughness_variation: 0.34f,
|
| 570 |
+
clearcoat_ior: 1.6f,
|
| 571 |
+
clearcoat_visibility: 1.0f,
|
| 572 |
+
orange_peel_strength: 0.06f,
|
| 573 |
+
orange_peel_size: 0.01f
|
| 574 |
+
);
|
| 575 |
+
|
| 576 |
+
|
| 577 |
+
// ------------------- 4 (Black) -------------------
|
| 578 |
+
export material Black(*)
|
| 579 |
+
[[
|
| 580 |
+
::anno::author("NVIDIA"),
|
| 581 |
+
::anno::display_name("Carpaint Solid - Black"),
|
| 582 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 583 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "black", "dark", "neutral")),
|
| 584 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Black.png"),
|
| 585 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 586 |
+
]]
|
| 587 |
+
= Carpaint_Solid(
|
| 588 |
+
base_color: color(0.006049f, 0.006049f, 0.006049f),
|
| 589 |
+
ground_coat_influence: 0.97f,
|
| 590 |
+
ground_coat_brightness: 0.17f,
|
| 591 |
+
edge_darkening: 0.57f,
|
| 592 |
+
flakes_tint: color(0.552011f, 0.552011f, 0.552011f),
|
| 593 |
+
flakes_density: 0.0f,
|
| 594 |
+
spread: 0.47f,
|
| 595 |
+
flakes_roughness: 0.34f,
|
| 596 |
+
flakes_size: 0.5f,
|
| 597 |
+
candy_flip: 0.0f,
|
| 598 |
+
flake_layer_visibility: 0.0f,
|
| 599 |
+
// roughness_texture:
|
| 600 |
+
clearcoat_rough: 0.05f,
|
| 601 |
+
roughness_variation: 0.36f,
|
| 602 |
+
clearcoat_ior: 1.6f,
|
| 603 |
+
clearcoat_visibility: 1.0f,
|
| 604 |
+
orange_peel_strength: 0.0f,
|
| 605 |
+
orange_peel_size: 0.01f
|
| 606 |
+
);
|
| 607 |
+
|
| 608 |
+
// ------------------- 5 (Black Matte) -------------------
|
| 609 |
+
export material Black_Matte(*)
|
| 610 |
+
[[
|
| 611 |
+
::anno::author("NVIDIA"),
|
| 612 |
+
::anno::display_name("Carpaint Solid - Black Matte"),
|
| 613 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 614 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "black", "dark", "neutral")),
|
| 615 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Black_Matte.png"),
|
| 616 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 617 |
+
]]
|
| 618 |
+
= Carpaint_Solid(
|
| 619 |
+
base_color: color(0.006995f, 0.006995f, 0.006995f),
|
| 620 |
+
ground_coat_influence: 0.11f,
|
| 621 |
+
ground_coat_brightness: 0.64f,
|
| 622 |
+
edge_darkening: 0.0f,
|
| 623 |
+
flakes_tint: color(0.577580f, 0.577580f, 0.577580f),
|
| 624 |
+
flakes_density: 0.12f,
|
| 625 |
+
spread: 0.39f,
|
| 626 |
+
flakes_roughness: 0.5f,
|
| 627 |
+
flakes_size: 0.5f,
|
| 628 |
+
candy_flip: 0.0f,
|
| 629 |
+
flake_layer_visibility: 0.0f,
|
| 630 |
+
// roughness_texture:
|
| 631 |
+
clearcoat_rough: 0.48f,
|
| 632 |
+
roughness_variation: 0.14f,
|
| 633 |
+
clearcoat_ior: 1.6f,
|
| 634 |
+
clearcoat_visibility: 1.0f,
|
| 635 |
+
orange_peel_strength: 0.0f,
|
| 636 |
+
orange_peel_size: 0.01f
|
| 637 |
+
);
|
| 638 |
+
|
| 639 |
+
// ------------------- 6 -------------------
|
| 640 |
+
export material Agent_Gray(*)
|
| 641 |
+
[[
|
| 642 |
+
::anno::author("NVIDIA"),
|
| 643 |
+
::anno::display_name("Carpaint Solid - Agent Gray"),
|
| 644 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 645 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "gray", "neutral")),
|
| 646 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Agent_Gray.png"),
|
| 647 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 648 |
+
]]
|
| 649 |
+
= Carpaint_Solid(
|
| 650 |
+
base_color: color(0.234551f, 0.254152f, 0.234551f),
|
| 651 |
+
ground_coat_influence: 0.11f,
|
| 652 |
+
ground_coat_brightness: 0.64f,
|
| 653 |
+
edge_darkening: 0.0f,
|
| 654 |
+
flakes_tint: color(0.644480f, 0.701102f, 0.644480f),
|
| 655 |
+
flakes_density: 0.2f,
|
| 656 |
+
spread: 0.25f,
|
| 657 |
+
flakes_roughness: 0.5f,
|
| 658 |
+
flakes_size: 0.5f,
|
| 659 |
+
candy_flip: 0.0f,
|
| 660 |
+
flake_layer_visibility: 0.0f,
|
| 661 |
+
// roughness_texture:
|
| 662 |
+
clearcoat_rough: 0.06f,
|
| 663 |
+
roughness_variation: 0.36f,
|
| 664 |
+
clearcoat_ior: 1.6f,
|
| 665 |
+
clearcoat_visibility: 1.0f,
|
| 666 |
+
orange_peel_strength: 0.0f,
|
| 667 |
+
orange_peel_size: 0.01f
|
| 668 |
+
);
|
| 669 |
+
|
| 670 |
+
|
| 671 |
+
// ------------------- 7 (Agent Gray Matte)-------------------
|
| 672 |
+
export material Agent_Gray_Matte(*)
|
| 673 |
+
[[
|
| 674 |
+
::anno::author("NVIDIA"),
|
| 675 |
+
::anno::display_name("Carpaint Solid - Agent Gray Matte"),
|
| 676 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 677 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "matte", "gray", "neutral")),
|
| 678 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Agent_Gray_Matte.png"),
|
| 679 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 680 |
+
]]
|
| 681 |
+
= Carpaint_Solid(
|
| 682 |
+
base_color: color(0.234551f, 0.254152f, 0.234551f),
|
| 683 |
+
ground_coat_influence: 0.11f,
|
| 684 |
+
ground_coat_brightness: 0.64f,
|
| 685 |
+
edge_darkening: 0.0f,
|
| 686 |
+
flakes_tint: color(0.644480f, 0.701102f, 0.644480f),
|
| 687 |
+
flakes_density: 0.21f,
|
| 688 |
+
spread: 0.25f,
|
| 689 |
+
flakes_roughness: 0.5f,
|
| 690 |
+
flakes_size: 0.5f,
|
| 691 |
+
candy_flip: 0.0f,
|
| 692 |
+
flake_layer_visibility: 0.0f,
|
| 693 |
+
// roughness_texture:
|
| 694 |
+
clearcoat_rough: 0.4f,
|
| 695 |
+
roughness_variation: 0.14f,
|
| 696 |
+
clearcoat_ior: 1.6f,
|
| 697 |
+
clearcoat_visibility: 1.0f,
|
| 698 |
+
orange_peel_strength: 0.0f,
|
| 699 |
+
orange_peel_size: 0.01f
|
| 700 |
+
);
|
| 701 |
+
|
| 702 |
+
// ------------------- 8 (Blood Red)-------------------
|
| 703 |
+
export material Blood_Red(*)
|
| 704 |
+
[[
|
| 705 |
+
::anno::author("NVIDIA"),
|
| 706 |
+
::anno::display_name("Carpaint Solid - Blood Red"),
|
| 707 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 708 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "red", "warm", "saturated")),
|
| 709 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Blood_Red.png"),
|
| 710 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 711 |
+
]]
|
| 712 |
+
= Carpaint_Solid(
|
| 713 |
+
base_color: color(0.462077f, 0.022174f, 0.015209f),
|
| 714 |
+
ground_coat_influence: 0.03f,
|
| 715 |
+
ground_coat_brightness: 0.24f,
|
| 716 |
+
edge_darkening: 0.56f,
|
| 717 |
+
flakes_tint: color(0.552011f, 0.552011f, 0.552011f),
|
| 718 |
+
flakes_density: 0.0f,
|
| 719 |
+
spread: 0.47f,
|
| 720 |
+
flakes_roughness: 0.34f,
|
| 721 |
+
flakes_size: 0.5f,
|
| 722 |
+
candy_flip: 0.0f,
|
| 723 |
+
flake_layer_visibility: 0.0f,
|
| 724 |
+
// roughness_texture:
|
| 725 |
+
clearcoat_rough: 0.05f,
|
| 726 |
+
roughness_variation: 0.36f,
|
| 727 |
+
clearcoat_ior: 1.6f,
|
| 728 |
+
clearcoat_visibility: 1.0f,
|
| 729 |
+
orange_peel_strength: 0.0f,
|
| 730 |
+
orange_peel_size: 0.01f
|
| 731 |
+
);
|
| 732 |
+
|
| 733 |
+
// ------------------- 9 (Tarreri Red)-------------------
|
| 734 |
+
export material Tarreri_Red(*)
|
| 735 |
+
[[
|
| 736 |
+
::anno::author("NVIDIA"),
|
| 737 |
+
::anno::display_name("Carpaint Solid - Tarreri Red"),
|
| 738 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 739 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "red", "warm", "saturated")),
|
| 740 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Tarreri_Red.png"),
|
| 741 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 742 |
+
]]
|
| 743 |
+
= Carpaint_Solid(
|
| 744 |
+
base_color: color(0.672443f, 0.038204f, 0.026241f),
|
| 745 |
+
ground_coat_influence: 0.03f,
|
| 746 |
+
ground_coat_brightness: 0.24f,
|
| 747 |
+
edge_darkening: 0.56f,
|
| 748 |
+
flakes_tint: color(0.672443f, 0.095307f, 0.078187f),
|
| 749 |
+
flakes_density: 0.0f,
|
| 750 |
+
spread: 0.47f,
|
| 751 |
+
flakes_roughness: 0.34f,
|
| 752 |
+
flakes_size: 0.5f,
|
| 753 |
+
candy_flip: 0.0f,
|
| 754 |
+
flake_layer_visibility: 0.0f,
|
| 755 |
+
// roughness_texture:
|
| 756 |
+
clearcoat_rough: 0.05f,
|
| 757 |
+
roughness_variation: 0.36f,
|
| 758 |
+
clearcoat_ior: 1.6f,
|
| 759 |
+
clearcoat_visibility: 1.0f,
|
| 760 |
+
orange_peel_strength: 0.0f,
|
| 761 |
+
orange_peel_size: 0.01f
|
| 762 |
+
);
|
| 763 |
+
|
| 764 |
+
|
| 765 |
+
// ------------------- 10 (Dark Decent Red)-------------------
|
| 766 |
+
export material Dark_Decent_Red(*)
|
| 767 |
+
[[
|
| 768 |
+
::anno::author("NVIDIA"),
|
| 769 |
+
::anno::display_name("Carpaint Solid - Dark Decent Red"),
|
| 770 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 771 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "red", "warm", "dark")),
|
| 772 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Dark_Decent_Red.png"),
|
| 773 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 774 |
+
]]
|
| 775 |
+
= Carpaint_Solid(
|
| 776 |
+
base_color: color(0.135633f, 0.012983f, 0.027321f),
|
| 777 |
+
ground_coat_influence: 0.19f,
|
| 778 |
+
ground_coat_brightness: 0.24f,
|
| 779 |
+
edge_darkening: 0.1f,
|
| 780 |
+
flakes_tint: color(0.135633f, 0.012983f, 0.027321f),
|
| 781 |
+
flakes_density: 0.0f,
|
| 782 |
+
spread: 0.38f,
|
| 783 |
+
flakes_roughness: 0.18f,
|
| 784 |
+
flakes_size: 0.5f,
|
| 785 |
+
candy_flip: 0.0f,
|
| 786 |
+
flake_layer_visibility: 0.0f,
|
| 787 |
+
// roughness_texture:
|
| 788 |
+
clearcoat_rough: 0.05f,
|
| 789 |
+
roughness_variation: 0.36f,
|
| 790 |
+
clearcoat_ior: 1.6f,
|
| 791 |
+
clearcoat_visibility: 1.0f,
|
| 792 |
+
orange_peel_strength: 0.0f,
|
| 793 |
+
orange_peel_size: 0.01f
|
| 794 |
+
);
|
| 795 |
+
|
| 796 |
+
// ------------------- 11 (Vintage Maroon)-------------------
|
| 797 |
+
export material Vintage_Maroon(*)
|
| 798 |
+
[[
|
| 799 |
+
::anno::author("NVIDIA"),
|
| 800 |
+
::anno::display_name("Carpaint Solid - Vintage Maroon"),
|
| 801 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 802 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "dark", "brown", "red")),
|
| 803 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Vintage_Maroon.png"),
|
| 804 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 805 |
+
]]
|
| 806 |
+
= Carpaint_Solid(
|
| 807 |
+
base_color: color(0.283149f, 0.054480f, 0.063010f),
|
| 808 |
+
ground_coat_influence: 0.19f,
|
| 809 |
+
ground_coat_brightness: 0.24f,
|
| 810 |
+
edge_darkening: 0.1f,
|
| 811 |
+
flakes_tint: color(0.283149f, 0.054480f, 0.063010f),
|
| 812 |
+
flakes_density: 0.0f,
|
| 813 |
+
spread: 0.38f,
|
| 814 |
+
flakes_roughness: 0.3f,
|
| 815 |
+
flakes_size: 0.5f,
|
| 816 |
+
candy_flip: 0.0f,
|
| 817 |
+
flake_layer_visibility: 0.0f,
|
| 818 |
+
// roughness_texture:
|
| 819 |
+
clearcoat_rough: 0.05f,
|
| 820 |
+
roughness_variation: 0.36f,
|
| 821 |
+
clearcoat_ior: 1.6f,
|
| 822 |
+
clearcoat_visibility: 1.0f,
|
| 823 |
+
orange_peel_strength: 0.0f,
|
| 824 |
+
orange_peel_size: 0.01f
|
| 825 |
+
);
|
| 826 |
+
|
| 827 |
+
// ------------------- 12 -------------------
|
| 828 |
+
export material Orange(*)
|
| 829 |
+
[[
|
| 830 |
+
::anno::author("NVIDIA"),
|
| 831 |
+
::anno::display_name("Carpaint Solid - Orange"),
|
| 832 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 833 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "orange", "warm", "saturated")),
|
| 834 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Orange.png"),
|
| 835 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 836 |
+
]]
|
| 837 |
+
= Carpaint_Solid(
|
| 838 |
+
base_color: color(0.623960f, 0.262251f, 0.022174f),
|
| 839 |
+
ground_coat_influence: 0.11f,
|
| 840 |
+
ground_coat_brightness: 0.64f,
|
| 841 |
+
edge_darkening: 0.0f,
|
| 842 |
+
flakes_tint: color(0.017642f, 0.262251f, 0.623960f),
|
| 843 |
+
flakes_density: 0.59f,
|
| 844 |
+
spread: 0.25f,
|
| 845 |
+
flakes_roughness: 0.5f,
|
| 846 |
+
flakes_size: 0.5f,
|
| 847 |
+
candy_flip: 0.0f,
|
| 848 |
+
flake_layer_visibility: 0.0f,
|
| 849 |
+
// roughness_texture:
|
| 850 |
+
clearcoat_rough: 0.06f,
|
| 851 |
+
roughness_variation: 0.36f,
|
| 852 |
+
clearcoat_ior: 1.6f,
|
| 853 |
+
clearcoat_visibility: 1.0f,
|
| 854 |
+
orange_peel_strength: 0.0f,
|
| 855 |
+
orange_peel_size: 0.01f
|
| 856 |
+
);
|
| 857 |
+
|
| 858 |
+
|
| 859 |
+
// ------------------- 13 (Brown Matte) -------------------
|
| 860 |
+
export material Brown_Matte(*)
|
| 861 |
+
[[
|
| 862 |
+
::anno::author("NVIDIA"),
|
| 863 |
+
::anno::display_name("Carpaint Solid - Brown Matte"),
|
| 864 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 865 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "brown", "matte")),
|
| 866 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Brown_Matte.png"),
|
| 867 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 868 |
+
]]
|
| 869 |
+
= Carpaint_Solid(
|
| 870 |
+
base_color: color(0.300544f, 0.250158f, 0.187821f),
|
| 871 |
+
ground_coat_influence: 0.11f,
|
| 872 |
+
ground_coat_brightness: 0.64f,
|
| 873 |
+
edge_darkening: 0.0f,
|
| 874 |
+
flakes_tint: color(0.300544f, 0.250158f, 0.187821f),
|
| 875 |
+
flakes_density: 0.0f,
|
| 876 |
+
spread: 0.39f,
|
| 877 |
+
flakes_roughness: 0.5f,
|
| 878 |
+
flakes_size: 0.5f,
|
| 879 |
+
candy_flip: 0.0f,
|
| 880 |
+
flake_layer_visibility: 0.0f,
|
| 881 |
+
// roughness_texture:
|
| 882 |
+
clearcoat_rough: 0.5f,
|
| 883 |
+
roughness_variation: 0.14f,
|
| 884 |
+
clearcoat_ior: 1.6f,
|
| 885 |
+
clearcoat_visibility: 1.0f,
|
| 886 |
+
orange_peel_strength: 0.0f,
|
| 887 |
+
orange_peel_size: 0.01f
|
| 888 |
+
);
|
| 889 |
+
|
| 890 |
+
|
| 891 |
+
// ------------------- 14 (Bumblebee) -------------------
|
| 892 |
+
export material Bumblebee(*)
|
| 893 |
+
[[
|
| 894 |
+
::anno::author("NVIDIA"),
|
| 895 |
+
::anno::display_name("Carpaint Solid - Bumblebee"),
|
| 896 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 897 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "yellow", "warm", "light", "saturated")),
|
| 898 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Bumblebee.png"),
|
| 899 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 900 |
+
]]
|
| 901 |
+
= Carpaint_Solid(
|
| 902 |
+
base_color: color(0.775822f, 0.564712f, 0.030713f),
|
| 903 |
+
ground_coat_influence: 0.09f,
|
| 904 |
+
ground_coat_brightness: 0.64f,
|
| 905 |
+
edge_darkening: 0.1f,
|
| 906 |
+
flakes_tint: color(1.000000f, 0.479320f, 0.095307f),
|
| 907 |
+
flakes_density: 0.0f,
|
| 908 |
+
spread: 0.54f,
|
| 909 |
+
flakes_roughness: 0.37f,
|
| 910 |
+
flakes_size: 0.5f,
|
| 911 |
+
candy_flip: 0.0f,
|
| 912 |
+
flake_layer_visibility: 0.0f,
|
| 913 |
+
// roughness_texture:
|
| 914 |
+
clearcoat_rough: 0.06f,
|
| 915 |
+
roughness_variation: 0.14f,
|
| 916 |
+
clearcoat_ior: 1.6f,
|
| 917 |
+
clearcoat_visibility: 1.0f,
|
| 918 |
+
orange_peel_strength: 0.0f,
|
| 919 |
+
orange_peel_size: 0.01f
|
| 920 |
+
);
|
| 921 |
+
|
| 922 |
+
|
| 923 |
+
// ------------------- 15 (Wasp) -------------------
|
| 924 |
+
export material Wasp(*)
|
| 925 |
+
[[
|
| 926 |
+
::anno::author("NVIDIA"),
|
| 927 |
+
::anno::display_name("Carpaint Solid - Wasp"),
|
| 928 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 929 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "yellow", "warm", "light", "saturated")),
|
| 930 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Wasp.png"),
|
| 931 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 932 |
+
]]
|
| 933 |
+
= Carpaint_Solid(
|
| 934 |
+
base_color: color(0.701102f, 0.603827f, 0.022174f),
|
| 935 |
+
ground_coat_influence: 0.0f,
|
| 936 |
+
ground_coat_brightness: 0.5f,
|
| 937 |
+
edge_darkening: 0.12f,
|
| 938 |
+
flakes_tint: color(1.000000f, 0.479320f, 0.076185f),
|
| 939 |
+
flakes_density: 0.0f,
|
| 940 |
+
spread: 0.54f,
|
| 941 |
+
flakes_roughness: 0.37f,
|
| 942 |
+
flakes_size: 0.5f,
|
| 943 |
+
candy_flip: 0.0f,
|
| 944 |
+
flake_layer_visibility: 0.0f,
|
| 945 |
+
// roughness_texture:
|
| 946 |
+
clearcoat_rough: 0.06f,
|
| 947 |
+
roughness_variation: 0.14f,
|
| 948 |
+
clearcoat_ior: 1.6f,
|
| 949 |
+
clearcoat_visibility: 1.0f,
|
| 950 |
+
orange_peel_strength: 0.0f,
|
| 951 |
+
orange_peel_size: 0.01f
|
| 952 |
+
);
|
| 953 |
+
|
| 954 |
+
// ------------------- 16 (Feline Dark Green)-------------------
|
| 955 |
+
export material Feline_Dark_Green(*)
|
| 956 |
+
[[
|
| 957 |
+
::anno::author("NVIDIA"),
|
| 958 |
+
::anno::display_name("Carpaint Solid - Feline Dark Green"),
|
| 959 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 960 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "green", "dark")),
|
| 961 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Feline_Dark_Green.png"),
|
| 962 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 963 |
+
]]
|
| 964 |
+
= Carpaint_Solid(
|
| 965 |
+
base_color: color(0.010330f, 0.099899f, 0.043735f),
|
| 966 |
+
ground_coat_influence: 0.19f,
|
| 967 |
+
ground_coat_brightness: 0.24f,
|
| 968 |
+
edge_darkening: 0.1f,
|
| 969 |
+
flakes_tint: color(0.010330f, 0.099899f, 0.043735f),
|
| 970 |
+
flakes_density: 0.0f,
|
| 971 |
+
spread: 0.38f,
|
| 972 |
+
flakes_roughness: 0.3f,
|
| 973 |
+
flakes_size: 0.5f,
|
| 974 |
+
candy_flip: 0.0f,
|
| 975 |
+
flake_layer_visibility: 0.0f,
|
| 976 |
+
// roughness_texture:
|
| 977 |
+
clearcoat_rough: 0.05f,
|
| 978 |
+
roughness_variation: 0.36f,
|
| 979 |
+
clearcoat_ior: 1.6f,
|
| 980 |
+
clearcoat_visibility: 1.0f,
|
| 981 |
+
orange_peel_strength: 0.0f,
|
| 982 |
+
orange_peel_size: 0.01f
|
| 983 |
+
);
|
| 984 |
+
|
| 985 |
+
|
| 986 |
+
// ------------------- 17 (Hunting Green Matte) -------------------
|
| 987 |
+
export material Hunting_Green_Matte(*)
|
| 988 |
+
[[
|
| 989 |
+
::anno::author("NVIDIA"),
|
| 990 |
+
::anno::display_name("Carpaint Solid - Hunting Green Matte"),
|
| 991 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 992 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "green", "dark", "matte")),
|
| 993 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Hunting_Green_Matte.png"),
|
| 994 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 995 |
+
]]
|
| 996 |
+
= Carpaint_Solid(
|
| 997 |
+
base_color: color(0.162029f, 0.187821f, 0.114435f),
|
| 998 |
+
ground_coat_influence: 0.11f,
|
| 999 |
+
ground_coat_brightness: 0.64f,
|
| 1000 |
+
edge_darkening: 0.0f,
|
| 1001 |
+
flakes_tint: color(0.318547f, 0.456411f, 0.127438f),
|
| 1002 |
+
flakes_density: 0.0f,
|
| 1003 |
+
spread: 0.3f,
|
| 1004 |
+
flakes_roughness: 0.5f,
|
| 1005 |
+
flakes_size: 0.5f,
|
| 1006 |
+
candy_flip: 0.0f,
|
| 1007 |
+
flake_layer_visibility: 0.0f,
|
| 1008 |
+
// roughness_texture:
|
| 1009 |
+
clearcoat_rough: 0.4f,
|
| 1010 |
+
roughness_variation: 0.14f,
|
| 1011 |
+
clearcoat_ior: 1.6f,
|
| 1012 |
+
clearcoat_visibility: 1.0f,
|
| 1013 |
+
orange_peel_strength: 0.0f,
|
| 1014 |
+
orange_peel_size: 0.01f
|
| 1015 |
+
);
|
| 1016 |
+
|
| 1017 |
+
|
| 1018 |
+
// ------------------- 18 (Vintage Sky Blue) -------------------
|
| 1019 |
+
export material Vintage_Sky_Blue(*)
|
| 1020 |
+
[[
|
| 1021 |
+
::anno::author("NVIDIA"),
|
| 1022 |
+
::anno::display_name("Carpaint Solid - Vintage Sky Blue"),
|
| 1023 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 1024 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "blue", "light", "cool")),
|
| 1025 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Vintage_Sky_Blue.png"),
|
| 1026 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 1027 |
+
]]
|
| 1028 |
+
= Carpaint_Solid(
|
| 1029 |
+
base_color: color(0.318547f, 0.564712f, 0.603827f),
|
| 1030 |
+
ground_coat_influence: 0.06f,
|
| 1031 |
+
ground_coat_brightness: 0.24f,
|
| 1032 |
+
edge_darkening: 0.0f,
|
| 1033 |
+
flakes_tint: color(0.603827f, 127.338437f, 0.693872f),
|
| 1034 |
+
flakes_density: 0.0f,
|
| 1035 |
+
spread: 0.41f,
|
| 1036 |
+
flakes_roughness: 0.32f,
|
| 1037 |
+
flakes_size: 0.5f,
|
| 1038 |
+
candy_flip: 0.0f,
|
| 1039 |
+
flake_layer_visibility: 0.0f,
|
| 1040 |
+
// roughness_texture:
|
| 1041 |
+
clearcoat_rough: 0.06f,
|
| 1042 |
+
roughness_variation: 0.34f,
|
| 1043 |
+
clearcoat_ior: 1.6f,
|
| 1044 |
+
clearcoat_visibility: 1.0f,
|
| 1045 |
+
orange_peel_strength: 0.06f,
|
| 1046 |
+
orange_peel_size: 0.01f
|
| 1047 |
+
);
|
| 1048 |
+
|
| 1049 |
+
|
| 1050 |
+
// ------------------- 19 (Blue)-------------------
|
| 1051 |
+
export material Blue(*)
|
| 1052 |
+
[[
|
| 1053 |
+
::anno::author("NVIDIA"),
|
| 1054 |
+
::anno::display_name("Carpaint Solid - Blue"),
|
| 1055 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 1056 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "blue", "cool", "saturated")),
|
| 1057 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Blue.png"),
|
| 1058 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 1059 |
+
]]
|
| 1060 |
+
= Carpaint_Solid(
|
| 1061 |
+
base_color: color(0.012983f, 0.296138f, 0.462077f),
|
| 1062 |
+
ground_coat_influence: 0.00f,
|
| 1063 |
+
ground_coat_brightness: 0.24f,
|
| 1064 |
+
edge_darkening: 0.0f,
|
| 1065 |
+
flakes_tint: color(0.012983f, 0.234551f, 0.665387f),
|
| 1066 |
+
flakes_density: 0.5f,
|
| 1067 |
+
spread: 0.47f,
|
| 1068 |
+
flakes_roughness: 0.34f,
|
| 1069 |
+
flakes_size: 0.5f,
|
| 1070 |
+
candy_flip: 0.0f,
|
| 1071 |
+
flake_layer_visibility: 0.0f,
|
| 1072 |
+
// roughness_texture:
|
| 1073 |
+
clearcoat_rough: 0.06f,
|
| 1074 |
+
roughness_variation: 0.36f,
|
| 1075 |
+
clearcoat_ior: 1.6f,
|
| 1076 |
+
clearcoat_visibility: 1.0f,
|
| 1077 |
+
orange_peel_strength: 0.0f,
|
| 1078 |
+
orange_peel_size: 0.01f
|
| 1079 |
+
);
|
| 1080 |
+
|
| 1081 |
+
|
| 1082 |
+
|
| 1083 |
+
// ------------------- 20 (Dark Decent Blue) -------------------
|
| 1084 |
+
export material Dark_Decent_Blue(*)
|
| 1085 |
+
[[
|
| 1086 |
+
::anno::author("NVIDIA"),
|
| 1087 |
+
::anno::display_name("Carpaint Solid - Dark Decent Blue"),
|
| 1088 |
+
::anno::description("Multilayered carpaint material with metallic flakes"),
|
| 1089 |
+
::anno::key_words(string[]("carpaint", "reflective", "artificial", "multilayer", "new", "flat", "clearcoat", "automotive", "design", "blue", "cool", "dark")),
|
| 1090 |
+
::anno::thumbnail("./.thumbs/Carpaint_Solid.Dark_Decent_Blue.png"),
|
| 1091 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 1092 |
+
]]
|
| 1093 |
+
= Carpaint_Solid(
|
| 1094 |
+
base_color: color(0.013702f, 0.046665f, 0.147027f),
|
| 1095 |
+
ground_coat_influence: 0.19f,
|
| 1096 |
+
ground_coat_brightness: 0.24f,
|
| 1097 |
+
edge_darkening: 0.1f,
|
| 1098 |
+
flakes_tint: color(0.012983f, 0.234551f, 0.665387f),
|
| 1099 |
+
flakes_density: 0.5f,
|
| 1100 |
+
spread: 0.25f,
|
| 1101 |
+
flakes_roughness: 0.34f,
|
| 1102 |
+
flakes_size: 0.5f,
|
| 1103 |
+
candy_flip: 0.0f,
|
| 1104 |
+
flake_layer_visibility: 0.0f,
|
| 1105 |
+
// roughness_texture:
|
| 1106 |
+
clearcoat_rough: 0.06f,
|
| 1107 |
+
roughness_variation: 0.36f,
|
| 1108 |
+
clearcoat_ior: 1.6f,
|
| 1109 |
+
clearcoat_visibility: 1.0f,
|
| 1110 |
+
orange_peel_strength: 0.0f,
|
| 1111 |
+
orange_peel_size: 0.01f
|
| 1112 |
+
);
|
MCV430_12FAN_CONF/simready_usd/materials/Copper.mdl
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
mdl 1.4;
|
| 2 |
+
|
| 3 |
+
import ::OmniPBR::OmniPBR;
|
| 4 |
+
import ::anno::author;
|
| 5 |
+
import ::anno::description;
|
| 6 |
+
import ::anno::display_name;
|
| 7 |
+
import ::anno::key_words;
|
| 8 |
+
import ::anno::version;
|
| 9 |
+
import ::tex::gamma_mode;
|
| 10 |
+
import ::state::normal;
|
| 11 |
+
|
| 12 |
+
export material Copper(*)
|
| 13 |
+
[[
|
| 14 |
+
::anno::display_name("Omni PBR "),
|
| 15 |
+
::anno::description("Omni PBR, supports ORM textures"),
|
| 16 |
+
::anno::version(1, 0, 0, ""),
|
| 17 |
+
::anno::author("NVIDIA CORPORATION"),
|
| 18 |
+
::anno::key_words(string[]("omni", "PBR", "omniverse", "generic"))
|
| 19 |
+
]]
|
| 20 |
+
= ::OmniPBR::OmniPBR(
|
| 21 |
+
diffuse_color_constant: color(0.200000003f, 0.200000003f, 0.200000003f),
|
| 22 |
+
diffuse_texture: texture_2d("./Copper/Copper_BaseColor.png" /* tag 3213, version 206360754 */, ::tex::gamma_srgb),
|
| 23 |
+
albedo_desaturation: 0.f,
|
| 24 |
+
albedo_add: 0.f,
|
| 25 |
+
albedo_brightness: 1.f,
|
| 26 |
+
diffuse_tint: color(1.f, 1.f, 1.f),
|
| 27 |
+
reflection_roughness_constant: 0.5f,
|
| 28 |
+
reflection_roughness_texture_influence: 1.f,
|
| 29 |
+
reflectionroughness_texture: texture_2d(),
|
| 30 |
+
metallic_constant: 0.f,
|
| 31 |
+
metallic_texture_influence: 1.f,
|
| 32 |
+
metallic_texture: texture_2d(),
|
| 33 |
+
specular_level: 0.5f,
|
| 34 |
+
enable_ORM_texture: true,
|
| 35 |
+
ORM_texture: texture_2d("./Copper/Copper_ORM.png" /* tag 3215, version 3196730051 */, ::tex::gamma_linear),
|
| 36 |
+
ao_to_diffuse: 0.f,
|
| 37 |
+
ao_texture: texture_2d(),
|
| 38 |
+
enable_emission: false,
|
| 39 |
+
emissive_color: color(1.f, 0.100000001f, 0.100000001f),
|
| 40 |
+
emissive_mask_texture: texture_2d(),
|
| 41 |
+
emissive_intensity: 40.f,
|
| 42 |
+
bump_factor: 1.f,
|
| 43 |
+
normalmap_texture: texture_2d("./Copper/Copper_N.png" /* tag 3217, version 364891401 */, ::tex::gamma_linear),
|
| 44 |
+
detail_bump_factor: 0.300000012f,
|
| 45 |
+
detail_normalmap_texture: texture_2d(),
|
| 46 |
+
project_uvw: false,
|
| 47 |
+
world_or_object: false,
|
| 48 |
+
uv_space_index: 0,
|
| 49 |
+
texture_translate: float2(0.f),
|
| 50 |
+
texture_rotate: 0.f,
|
| 51 |
+
texture_scale: float2(1.f),
|
| 52 |
+
detail_texture_translate: float2(0.f),
|
| 53 |
+
detail_texture_rotate: 0.f,
|
| 54 |
+
detail_texture_scale: float2(1.f));
|
MCV430_12FAN_CONF/simready_usd/materials/Metal_Black_Paint.mdl
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
mdl 1.4;
|
| 2 |
+
|
| 3 |
+
import ::OmniPBR::OmniPBR;
|
| 4 |
+
|
| 5 |
+
// The authored material called Templates::OmniUber_Automotive, which is not
|
| 6 |
+
// available on the SimReady MDL search path, so the fans rendered as the
|
| 7 |
+
// compiler error color. This keeps the same material name and black appearance.
|
| 8 |
+
export material Metal_Black_Paint(*)
|
| 9 |
+
= ::OmniPBR::OmniPBR(
|
| 10 |
+
diffuse_color_constant: color(0.02f, 0.02f, 0.02f),
|
| 11 |
+
metallic_constant: 1.0f,
|
| 12 |
+
reflection_roughness_constant: 0.35f
|
| 13 |
+
);
|
MCV430_12FAN_CONF/simready_usd/materials/Plastic_Thick_Translucent_Flakes.mdl
ADDED
|
@@ -0,0 +1,1025 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/******************************************************************************
|
| 2 |
+
* Copyright 2023 NVIDIA Corporation. All rights reserved.
|
| 3 |
+
******************************************************************************
|
| 4 |
+
|
| 5 |
+
Permission is hereby granted by NVIDIA Corporation ("NVIDIA"), free of charge,
|
| 6 |
+
to any person obtaining a copy of the sample definition code that uses our
|
| 7 |
+
Material Definition Language (the "MDL Materials"), to reproduce and distribute
|
| 8 |
+
the MDL Materials, including without limitation the rights to use, copy, merge,
|
| 9 |
+
publish, distribute, and sell modified and unmodified copies of the MDL
|
| 10 |
+
Materials, and to permit persons to whom the MDL Materials is furnished to do
|
| 11 |
+
so, in all cases solely for use with NVIDIA's Material Definition Language,
|
| 12 |
+
subject to the following further conditions:
|
| 13 |
+
|
| 14 |
+
1. The above copyright notices, this list of conditions, and the disclaimer
|
| 15 |
+
that follows shall be retained in all copies of one or more of the MDL
|
| 16 |
+
Materials, including in any software with which the MDL Materials are bundled,
|
| 17 |
+
redistributed, and/or sold, and included either as stand-alone text files,
|
| 18 |
+
human-readable headers or in the appropriate machine-readable metadata fields
|
| 19 |
+
within text or binary files as long as those fields can be easily viewed by the
|
| 20 |
+
user, as applicable.
|
| 21 |
+
2. The name of NVIDIA shall not be used to promote, endorse or advertise any
|
| 22 |
+
Modified Version without specific prior written permission, except a) to comply
|
| 23 |
+
with the notice requirements otherwise contained herein; or b) to acknowledge
|
| 24 |
+
the contribution(s) of NVIDIA.
|
| 25 |
+
|
| 26 |
+
THE MDL MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
| 27 |
+
OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY,
|
| 28 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT,
|
| 29 |
+
TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL NVIDIA CORPORATION BE LIABLE FOR
|
| 30 |
+
ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL,
|
| 31 |
+
INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF
|
| 32 |
+
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE
|
| 33 |
+
THE MDL MATERIALS OR FROM OTHER DEALINGS IN THE MDL MATERIALS.
|
| 34 |
+
*/
|
| 35 |
+
|
| 36 |
+
// This file contains samples of very fast rendering SSS plastics for iray
|
| 37 |
+
//
|
| 38 |
+
|
| 39 |
+
mdl 1.4;
|
| 40 |
+
import ::df::*;
|
| 41 |
+
import ::math::*;
|
| 42 |
+
import ::anno::*;
|
| 43 |
+
import ::state::*;
|
| 44 |
+
import ::base::*;
|
| 45 |
+
import ::nvidia::core_definitions::dimension;
|
| 46 |
+
|
| 47 |
+
|
| 48 |
+
const string COPYRIGHT =
|
| 49 |
+
" Copyright 2023 NVIDIA Corporation. All rights reserved.\n"
|
| 50 |
+
" MDL MATERIALS ARE PROVIDED PURSUANT TO AN END USER LICENSE AGREEMENT,\n"
|
| 51 |
+
" WHICH WAS ACCEPTED IN ORDER TO GAIN ACCESS TO THIS FILE. IN PARTICULAR,\n"
|
| 52 |
+
" THE MDL MATERIALS ARE PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n"
|
| 53 |
+
" EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF\n"
|
| 54 |
+
" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF\n"
|
| 55 |
+
" COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL NVIDIA\n"
|
| 56 |
+
" CORPORATION BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY\n"
|
| 57 |
+
" GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN\n"
|
| 58 |
+
" AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR\n"
|
| 59 |
+
" INABILITY TO USE THE MDL MATERIALS OR FROM OTHER DEALINGS IN THE MDL MATERIALS.\n";
|
| 60 |
+
|
| 61 |
+
|
| 62 |
+
const string DESCRIPTION =
|
| 63 |
+
"Translucent plastic material with integrated metal flakes. Features: Effective light scattering for dense "
|
| 64 |
+
"plastic materials and metal flakes. The material was built to scatter light within the range of a few "
|
| 65 |
+
"centimeters. If light scattering cannot be seen (which can be verified by setting 'Diffuse Weight' to 0.0), "
|
| 66 |
+
"check the scene units scale or increase 'Distance Scale'.";
|
| 67 |
+
|
| 68 |
+
|
| 69 |
+
//
|
| 70 |
+
// flake noise utilities
|
| 71 |
+
//
|
| 72 |
+
int hash(int seed, int i)
|
| 73 |
+
{
|
| 74 |
+
return (i ^ seed) * 1075385539;
|
| 75 |
+
}
|
| 76 |
+
int rnd_init(int3 pos)
|
| 77 |
+
{
|
| 78 |
+
return hash(hash(hash(0, pos.x), pos.y), pos.z);
|
| 79 |
+
}
|
| 80 |
+
|
| 81 |
+
int rnd_next(int seed) {
|
| 82 |
+
// xorshift32 using signed int
|
| 83 |
+
seed ^= seed << 13;
|
| 84 |
+
seed ^= seed >>> 17;
|
| 85 |
+
seed ^= seed << 5;
|
| 86 |
+
return seed;
|
| 87 |
+
}
|
| 88 |
+
|
| 89 |
+
float rnd_value(int seed)
|
| 90 |
+
{
|
| 91 |
+
return ::math::abs(float(seed) * 4.6566e-10f);
|
| 92 |
+
}
|
| 93 |
+
|
| 94 |
+
// apply random rotation (using "Fast Random Rotation Matrices" by James Arvo)
|
| 95 |
+
float3 rotate_pos(float3 pos, float3 xi)
|
| 96 |
+
{
|
| 97 |
+
float theta = ::math::PI * 2.0f * xi.x;
|
| 98 |
+
float phi = ::math::PI * 2.0f * xi.y;
|
| 99 |
+
float z = xi.z * 2.0f;
|
| 100 |
+
|
| 101 |
+
float r = ::math::sqrt(z);
|
| 102 |
+
float[2] sp_cp = ::math::sincos(phi);
|
| 103 |
+
float Vx = sp_cp[0] * r;
|
| 104 |
+
float Vy = sp_cp[1] * r;
|
| 105 |
+
float Vz = ::math::sqrt(2.0f - z);
|
| 106 |
+
|
| 107 |
+
float[2] st_ct = ::math::sincos(theta);
|
| 108 |
+
float Sx = Vx * st_ct[1] - Vy * st_ct[0];
|
| 109 |
+
float Sy = Vx * st_ct[0] + Vy * st_ct[1];
|
| 110 |
+
|
| 111 |
+
float3x3 M(
|
| 112 |
+
Vx * Sx - st_ct[1], Vx * Sy - st_ct[0], Vx * Vz,
|
| 113 |
+
Vy * Sx + st_ct[0], Vy * Sy - st_ct[1], Vy * Vz,
|
| 114 |
+
Vz * Sx, Vz * Sy, 1.0f - z);
|
| 115 |
+
|
| 116 |
+
return M * pos;
|
| 117 |
+
}
|
| 118 |
+
|
| 119 |
+
struct flake_noise_value {
|
| 120 |
+
// flake priority (in [0..1], 0: no flake, flakes with higher priority shadow flakes "below" them)
|
| 121 |
+
float priority;
|
| 122 |
+
// Stores values from the functions (once normal, another time the color)
|
| 123 |
+
// current pseudo random number generator seed
|
| 124 |
+
int rnd_seed;
|
| 125 |
+
float4 carrier;
|
| 126 |
+
};
|
| 127 |
+
|
| 128 |
+
// flake noise function with controllable regularity, flake size, and probability
|
| 129 |
+
flake_noise_value flake_noise(
|
| 130 |
+
float3 pos,
|
| 131 |
+
float jitter_scale = 1.0f,
|
| 132 |
+
float flake_diameter = 0.75f,
|
| 133 |
+
float flake_probability = 1.0f)
|
| 134 |
+
{
|
| 135 |
+
float3 base_pos = ::math::floor(pos);
|
| 136 |
+
int3 base_pos_i = int3(base_pos);
|
| 137 |
+
|
| 138 |
+
// limit the flake size to the allowed maximum (such that looking at all neighbors is sufficient)
|
| 139 |
+
flake_diameter = ::math::min(flake_diameter, (1.5f - 0.5f * jitter_scale) / ::math::sqrt(3.0f));
|
| 140 |
+
|
| 141 |
+
flake_noise_value val(0.0f, 0, float4(0.0));
|
| 142 |
+
|
| 143 |
+
for (int i = -1; i < 2; ++i) {
|
| 144 |
+
for (int j = -1; j < 2; ++j) {
|
| 145 |
+
for (int k = -1; k < 2; ++k) {
|
| 146 |
+
|
| 147 |
+
int seed = rnd_init(base_pos_i + int3(i, j, k));
|
| 148 |
+
|
| 149 |
+
seed = rnd_next(seed);
|
| 150 |
+
if (rnd_value(seed) > flake_probability)
|
| 151 |
+
continue;
|
| 152 |
+
|
| 153 |
+
seed = rnd_next(seed);
|
| 154 |
+
float priority = rnd_value(seed);
|
| 155 |
+
if (priority < val.priority)
|
| 156 |
+
continue;
|
| 157 |
+
|
| 158 |
+
float3 flake_pos = base_pos + float3(i, j, k) + float3(0.5f);
|
| 159 |
+
|
| 160 |
+
if (jitter_scale > 0.0f) {
|
| 161 |
+
seed = rnd_next(seed);
|
| 162 |
+
flake_pos.x += (rnd_value(seed) - 0.5f) * jitter_scale;
|
| 163 |
+
seed = rnd_next(seed);
|
| 164 |
+
flake_pos.y += (rnd_value(seed) - 0.5f) * jitter_scale;
|
| 165 |
+
seed = rnd_next(seed);
|
| 166 |
+
flake_pos.z += (rnd_value(seed) - 0.5f) * jitter_scale;
|
| 167 |
+
}
|
| 168 |
+
|
| 169 |
+
float3 p = pos - flake_pos;
|
| 170 |
+
if (::math::dot(p, p) >= flake_diameter * flake_diameter * 4.0f)
|
| 171 |
+
continue;
|
| 172 |
+
|
| 173 |
+
float3 xi_rot;
|
| 174 |
+
seed = rnd_next(seed);
|
| 175 |
+
xi_rot.x = rnd_value(seed);
|
| 176 |
+
seed = rnd_next(seed);
|
| 177 |
+
xi_rot.y = rnd_value(seed);
|
| 178 |
+
seed = rnd_next(seed);
|
| 179 |
+
xi_rot.z = rnd_value(seed);
|
| 180 |
+
p = rotate_pos(p, xi_rot);
|
| 181 |
+
|
| 182 |
+
if (::math::abs(p.x) <= flake_diameter &&
|
| 183 |
+
::math::abs(p.y) <= flake_diameter &&
|
| 184 |
+
::math::abs(p.z) <= flake_diameter)
|
| 185 |
+
{
|
| 186 |
+
val.priority = priority;
|
| 187 |
+
val.rnd_seed = seed;
|
| 188 |
+
}
|
| 189 |
+
}
|
| 190 |
+
}
|
| 191 |
+
}
|
| 192 |
+
|
| 193 |
+
return val;
|
| 194 |
+
}
|
| 195 |
+
|
| 196 |
+
|
| 197 |
+
// constants for numerical fitted curve to observed flake noise density behavior
|
| 198 |
+
// 1. no jitter, maximum flake diameter
|
| 199 |
+
const float4 ABCD = float4(-26.19771808f, 26.39663835f, 85.53857017f, -102.35069432f);
|
| 200 |
+
const float2 EF = float2(-101.42634862f, 118.45082288f);
|
| 201 |
+
// 2. jitter scale of 0.5f, maximum flake diameter
|
| 202 |
+
const float4 ABCD_J = float4(-0.87962159f, 0.91006603f, 0.76088203f, -0.24953308f);
|
| 203 |
+
const float2 EF_J = float2(-3.11456809f, 2.63430594f);
|
| 204 |
+
// compute a flake probability for a given flake coverage density x
|
| 205 |
+
float density_to_probability(
|
| 206 |
+
float4 abcd,
|
| 207 |
+
float2 ef,
|
| 208 |
+
float x)
|
| 209 |
+
{
|
| 210 |
+
float xx = x * x;
|
| 211 |
+
return (abcd.x * xx + abcd.y * x) / (abcd.z * xx * x + abcd.w * xx + ef.x * x + ef.y);
|
| 212 |
+
}
|
| 213 |
+
|
| 214 |
+
// statistically controlled (area/volume coverage density) flake noise
|
| 215 |
+
flake_noise_value flake_noise(
|
| 216 |
+
float3 position,
|
| 217 |
+
float density = 0.5f,
|
| 218 |
+
bool jittered = false) // jittered: slightly slower and slightly less uniform
|
| 219 |
+
{
|
| 220 |
+
float probability = density_to_probability(jittered ? ABCD_J : ABCD, jittered ? EF_J : EF, ::math::saturate(density));
|
| 221 |
+
|
| 222 |
+
return flake_noise(pos: position, jitter_scale: jittered ? 0.5f : 0.0f, flake_diameter: (jittered ? 1.25f : 1.5f) / ::math::sqrt(3.0f), flake_probability: probability);
|
| 223 |
+
}
|
| 224 |
+
|
| 225 |
+
// create a flake normal by importance sampling the Beckmann distribution with given roughness
|
| 226 |
+
flake_noise_value flake_normal(
|
| 227 |
+
flake_noise_value val,
|
| 228 |
+
float spread)
|
| 229 |
+
{
|
| 230 |
+
if (val.priority <= 0.0f)
|
| 231 |
+
{
|
| 232 |
+
val.carrier = float4(::state::normal().x, ::state::normal().y, ::state::normal().z, 1.0);
|
| 233 |
+
return val;
|
| 234 |
+
}
|
| 235 |
+
|
| 236 |
+
// int seed0 = rnd_next(val.rnd_seed);
|
| 237 |
+
// float xi0 = rnd_value(seed0);
|
| 238 |
+
// float xi1 = rnd_value(rnd_next(seed0));
|
| 239 |
+
|
| 240 |
+
int seed = rnd_next(val.rnd_seed);
|
| 241 |
+
float xi0 = rnd_value(seed);
|
| 242 |
+
seed = rnd_next(seed);
|
| 243 |
+
float xi1 = rnd_value(seed);
|
| 244 |
+
|
| 245 |
+
float phi = ::math::PI * 2.0f * xi0;
|
| 246 |
+
|
| 247 |
+
float roughness = spread * spread;
|
| 248 |
+
|
| 249 |
+
float tantheta = ::math::sqrt(-roughness * roughness * ::math::log(1.0f - xi1));
|
| 250 |
+
float sintheta = tantheta / ::math::sqrt(1.0f + tantheta * tantheta);
|
| 251 |
+
float costheta = ::math::sqrt(1.0f - sintheta * sintheta);
|
| 252 |
+
|
| 253 |
+
float[2] scphi = ::math::sincos(phi);
|
| 254 |
+
|
| 255 |
+
val.rnd_seed = seed;
|
| 256 |
+
|
| 257 |
+
// return
|
| 258 |
+
// ::state::texture_tangent_u(0) * scphi[1] * sintheta +
|
| 259 |
+
// ::state::texture_tangent_v(0) * scphi[0] * sintheta +
|
| 260 |
+
// ::state::normal() * costheta;
|
| 261 |
+
float3 normal = ::state::texture_tangent_u(0) * scphi[1] * sintheta +
|
| 262 |
+
::state::texture_tangent_v(0) * scphi[0] * sintheta +
|
| 263 |
+
::state::normal() * costheta;
|
| 264 |
+
|
| 265 |
+
val.carrier = float4(normal.x, normal.y, normal.z, 1.0);
|
| 266 |
+
|
| 267 |
+
|
| 268 |
+
return val;
|
| 269 |
+
}
|
| 270 |
+
|
| 271 |
+
flake_noise_value random_flake_color(flake_noise_value val)
|
| 272 |
+
{
|
| 273 |
+
int seed = rnd_next(val.rnd_seed);
|
| 274 |
+
float r = rnd_value(seed);
|
| 275 |
+
seed = rnd_next(seed);
|
| 276 |
+
float g = rnd_value(seed);
|
| 277 |
+
seed = rnd_next(seed);
|
| 278 |
+
float b = rnd_value(seed);
|
| 279 |
+
seed = rnd_next(seed);
|
| 280 |
+
float a = rnd_value(seed);
|
| 281 |
+
|
| 282 |
+
val.carrier = float4(r, g, b, a);
|
| 283 |
+
return val;
|
| 284 |
+
}
|
| 285 |
+
|
| 286 |
+
|
| 287 |
+
// Template for absorption and scattering, do not use directly
|
| 288 |
+
material volume_absorption(
|
| 289 |
+
color absorption = color(0.8665, 0.7769, 0.1559),
|
| 290 |
+
color scattering = color(.5),
|
| 291 |
+
float distance_scale = .03,
|
| 292 |
+
float directional_bias = 0.0,
|
| 293 |
+
uniform float ior = 1.2
|
| 294 |
+
|
| 295 |
+
)
|
| 296 |
+
[[
|
| 297 |
+
::anno::author("NVIDIA vMaterials"),
|
| 298 |
+
::anno::display_name("Volume Absorption"),
|
| 299 |
+
::anno::description("Pure volume absorption material"),
|
| 300 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.volume_absorption.png"),
|
| 301 |
+
::anno::copyright_notice(COPYRIGHT),
|
| 302 |
+
::anno::hidden()
|
| 303 |
+
|
| 304 |
+
]] = material (
|
| 305 |
+
ior: color(ior),
|
| 306 |
+
surface: material_surface (
|
| 307 |
+
scattering: ::df::specular_bsdf (
|
| 308 |
+
tint: color (1.0, 1.0, 1.0),
|
| 309 |
+
mode: ::df::scatter_reflect_transmit
|
| 310 |
+
)
|
| 311 |
+
),
|
| 312 |
+
volume: material_volume (
|
| 313 |
+
scattering: ::df::anisotropic_vdf(
|
| 314 |
+
directional_bias: directional_bias
|
| 315 |
+
),
|
| 316 |
+
absorption_coefficient: (distance_scale <= 0)? color(0): ::math::log(absorption) / -distance_scale,
|
| 317 |
+
scattering_coefficient: (distance_scale <= 0)? color(0): ::math::log(scattering) / -distance_scale
|
| 318 |
+
)
|
| 319 |
+
);
|
| 320 |
+
|
| 321 |
+
// metallic_plastic_full_weighted_mix( )
|
| 322 |
+
// Plastic material using diffuse reflection, diffuse transmission
|
| 323 |
+
// and SSS. Due to the diffuse transmission the volume absorption will
|
| 324 |
+
// render faster and converge smoother than when using specular transmission.
|
| 325 |
+
export material Plastic_Thick_Translucent_Flakes(
|
| 326 |
+
color diffuse_color = color(0.6940f, 0.5831f, 0.0493f)
|
| 327 |
+
[[
|
| 328 |
+
::anno::display_name("Diffuse Color"),
|
| 329 |
+
::anno::description("The diffuse color of the plastic material"),
|
| 330 |
+
::anno::in_group("Appearance")
|
| 331 |
+
]],
|
| 332 |
+
float diffuse_weight = 0.3f
|
| 333 |
+
[[
|
| 334 |
+
::anno::display_name("Diffuse Weight"),
|
| 335 |
+
::anno::description("The weight of the diffuse color of the plastic material. It is recommended to keep "
|
| 336 |
+
"the value around 0.5, lower values make the material appear more transparent while higher values make "
|
| 337 |
+
"it more opaque."),
|
| 338 |
+
::anno::in_group("Appearance"),
|
| 339 |
+
::anno::hard_range(0.f, 1.f)
|
| 340 |
+
]],
|
| 341 |
+
color absorption = color(0.8665f, 0.7769f, 0.1559f)
|
| 342 |
+
[[
|
| 343 |
+
::anno::display_name("Absorption Color"),
|
| 344 |
+
::anno::description("Sets the absorption color (this is color when light goes extinct)of the plastic material"),
|
| 345 |
+
::anno::in_group("Appearance")
|
| 346 |
+
]],
|
| 347 |
+
color scattering = color(.5f)
|
| 348 |
+
[[
|
| 349 |
+
::anno::display_name("Scattering Color"),
|
| 350 |
+
::anno::description("Sets the absorption color (this is color when light goes extinct)of the plastic material"),
|
| 351 |
+
::anno::in_group("Appearance")
|
| 352 |
+
]],
|
| 353 |
+
float distance_scale = 1.5f
|
| 354 |
+
[[
|
| 355 |
+
::anno::display_name("Distance Scale"),
|
| 356 |
+
::anno::description("Scales how quickly light is absorbed. Set this value low enough to see "
|
| 357 |
+
"some light extinction taking place. Tip: Set 'diffuse_weight' to 0.0 while adjusting this "
|
| 358 |
+
"material parameter for your scene"),
|
| 359 |
+
::anno::in_group("Appearance")
|
| 360 |
+
]],
|
| 361 |
+
|
| 362 |
+
color diffuse_transmission_tint = color(1.0000f, 0.7249f, 0.1972f)
|
| 363 |
+
[[
|
| 364 |
+
::anno::display_name("Diffuse Transmission Color"),
|
| 365 |
+
::anno::description("The tinting of light scattering through the plastic material"),
|
| 366 |
+
::anno::in_group("Appearance")
|
| 367 |
+
]],
|
| 368 |
+
|
| 369 |
+
float reflection_roughness = 0.0f
|
| 370 |
+
[[
|
| 371 |
+
::anno::display_name("Roughness"),
|
| 372 |
+
::anno::description("The roughness of the reflection on the plastic"),
|
| 373 |
+
::anno::in_group("Appearance"),
|
| 374 |
+
::anno::hard_range(0.f, 1.f)
|
| 375 |
+
]],
|
| 376 |
+
|
| 377 |
+
// Flakes Controls
|
| 378 |
+
color flake_color_1 = color(1.0f, 1.0f, 1.0f)
|
| 379 |
+
[[
|
| 380 |
+
::anno::display_name("Flakes Color"),
|
| 381 |
+
::anno::description("Flakes Color"),
|
| 382 |
+
::anno::in_group("Flakes")
|
| 383 |
+
]],
|
| 384 |
+
bool enable_color_randomization = true
|
| 385 |
+
[[
|
| 386 |
+
::anno::display_name("Flakes Color Randomization"),
|
| 387 |
+
::anno::description("Enables that a random flakes color will be chosen. Using 'Flakes Color Randomness' allows "
|
| 388 |
+
"to blend between the chosen reflection color for the flakes and an purely random chosen color."),
|
| 389 |
+
::anno::in_group("Flakes")
|
| 390 |
+
]],
|
| 391 |
+
float flake_color_randomness = 1.0f
|
| 392 |
+
[[
|
| 393 |
+
::anno::display_name("Flakes Color Randomness"),
|
| 394 |
+
::anno::description("Incresing this value will blend towards a randomly chosen flakes color."),
|
| 395 |
+
::anno::in_group("Flakes"),
|
| 396 |
+
::anno::hard_range(0.f, 1.f),
|
| 397 |
+
::anno::enable_if("enable_color_randomization == true")
|
| 398 |
+
]],
|
| 399 |
+
uniform float flake_size = 0.1f
|
| 400 |
+
[[
|
| 401 |
+
::anno::display_name("Flakes Size"),
|
| 402 |
+
::anno::description("The size of the flakes in the material"),
|
| 403 |
+
::anno::in_group("Flakes")
|
| 404 |
+
]],
|
| 405 |
+
uniform float3 texture_scale = float3 ( 1.f , 1.f, 1.f)
|
| 406 |
+
[[
|
| 407 |
+
//::anno::hidden(),
|
| 408 |
+
::anno::display_name("Scale"),
|
| 409 |
+
::anno::description("Larger numbers increase the texture size."),
|
| 410 |
+
::nvidia::core_definitions::dimension(float3(1.0f, 1.0f, 1.0f)),
|
| 411 |
+
::anno::in_group("Transform")
|
| 412 |
+
]],
|
| 413 |
+
uniform float flake_amount = 0.1f
|
| 414 |
+
[[
|
| 415 |
+
::anno::display_name("Flakes Amount"),
|
| 416 |
+
::anno::description("The number of flakes used in the material, 0 meaning no flakes, 1 meaning that flakes "
|
| 417 |
+
"cover the entire surface"),
|
| 418 |
+
::anno::in_group("Flakes"),
|
| 419 |
+
::anno::hard_range(0.f, 1.f)
|
| 420 |
+
]],
|
| 421 |
+
|
| 422 |
+
float flake_spread = 0.7f
|
| 423 |
+
[[
|
| 424 |
+
::anno::display_name("Flakes Spread"),
|
| 425 |
+
::anno::description("The amount of randomness in the orientation of the flakes. When set to zero, flakes are "
|
| 426 |
+
"oriented along the surface normal. Higher values tilt the flakes stronger in a random direction."),
|
| 427 |
+
::anno::in_group("Flakes"),
|
| 428 |
+
::anno::hard_range(0.f, 1.f)
|
| 429 |
+
]]
|
| 430 |
+
)
|
| 431 |
+
[[
|
| 432 |
+
::anno::author("NVIDIA vMaterials"),
|
| 433 |
+
::anno::display_name("Plastic Full Control"),
|
| 434 |
+
::anno::description(DESCRIPTION),
|
| 435 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.Plastic_Thick_Translucent_Flakes.png"),
|
| 436 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment")),
|
| 437 |
+
::anno::copyright_notice(COPYRIGHT),
|
| 438 |
+
::anno::hidden()
|
| 439 |
+
]] = let {
|
| 440 |
+
// Hardcoded plastic parameters
|
| 441 |
+
float reflection_weight = 1.0f;
|
| 442 |
+
float normal_reflectivity = 0.04f;
|
| 443 |
+
float grazing_reflectivity = 1.0f;
|
| 444 |
+
float reflectivity_exponent = 5.0f;
|
| 445 |
+
uniform float ior = 1.4f;
|
| 446 |
+
|
| 447 |
+
// Hardcoded flake parameters
|
| 448 |
+
uniform float flake_roughness = 0.4f;
|
| 449 |
+
float flake_transparency_randomness = 1.0f;
|
| 450 |
+
float flakes_opacity = 0.8;
|
| 451 |
+
|
| 452 |
+
// Flakes
|
| 453 |
+
|
| 454 |
+
float3 flake_uvw_scale = float3(1.0f);
|
| 455 |
+
::base::texture_coordinate_info uvw = ::base::coordinate_source(
|
| 456 |
+
coordinate_system: ::base::texture_coordinate_world,
|
| 457 |
+
texture_space: 0
|
| 458 |
+
);
|
| 459 |
+
|
| 460 |
+
::base::texture_coordinate_info transformed_uvw = uvw;
|
| 461 |
+
float3 flake_uvw = (texture_scale * transformed_uvw.position * flake_uvw_scale) / (flake_size * 0.001f);
|
| 462 |
+
|
| 463 |
+
flake_noise_value val = flake_noise(flake_uvw, flake_amount, true);
|
| 464 |
+
bool is_flake = val.priority > 0.0f;
|
| 465 |
+
flake_noise_value val2 = flake_normal(val, flake_spread);
|
| 466 |
+
float3 flake_normal = float3(val2.carrier.x, val2.carrier.y, val2.carrier.z);
|
| 467 |
+
flake_noise_value val3 = random_flake_color(val2);
|
| 468 |
+
|
| 469 |
+
color random_color = color(val3.carrier.x, val3.carrier.y, val3.carrier.z);
|
| 470 |
+
float flakes_transparency_value = ::math::lerp(flakes_opacity, val3.carrier.w * flakes_opacity, flake_transparency_randomness);
|
| 471 |
+
|
| 472 |
+
color flake_color = enable_color_randomization ?
|
| 473 |
+
::math::lerp(flake_color_1, random_color, flake_color_randomness) : flake_color_1;
|
| 474 |
+
|
| 475 |
+
bsdf flakes = ::df::simple_glossy_bsdf(mode: ::df::scatter_reflect, roughness_u: flake_roughness * flake_roughness, tint: flake_color);
|
| 476 |
+
|
| 477 |
+
|
| 478 |
+
// Plastic
|
| 479 |
+
|
| 480 |
+
material plastic = volume_absorption(
|
| 481 |
+
absorption: absorption,
|
| 482 |
+
scattering: scattering,
|
| 483 |
+
distance_scale: distance_scale,
|
| 484 |
+
ior: ior
|
| 485 |
+
);
|
| 486 |
+
|
| 487 |
+
bsdf transdiff = ::df::diffuse_transmission_bsdf(
|
| 488 |
+
tint: diffuse_transmission_tint
|
| 489 |
+
);
|
| 490 |
+
|
| 491 |
+
bsdf diffuse = ::df::diffuse_reflection_bsdf(
|
| 492 |
+
tint: diffuse_color
|
| 493 |
+
);
|
| 494 |
+
|
| 495 |
+
bsdf diffuse_mix_layer = ::df::weighted_layer(
|
| 496 |
+
base: transdiff,
|
| 497 |
+
layer: diffuse,
|
| 498 |
+
weight: diffuse_weight
|
| 499 |
+
|
| 500 |
+
);
|
| 501 |
+
|
| 502 |
+
bsdf plastic_with_flakes = ::df::weighted_layer(
|
| 503 |
+
base: diffuse_mix_layer,
|
| 504 |
+
layer: flakes,
|
| 505 |
+
weight: is_flake ? flakes_transparency_value : 0.0f,
|
| 506 |
+
normal: flake_normal
|
| 507 |
+
);
|
| 508 |
+
|
| 509 |
+
bsdf glossy_reflection = ::df::simple_glossy_bsdf(
|
| 510 |
+
tint: color(1.0),
|
| 511 |
+
roughness_u: reflection_roughness,
|
| 512 |
+
mode: ::df::scatter_reflect
|
| 513 |
+
);
|
| 514 |
+
|
| 515 |
+
bsdf final_layer = ::df::custom_curve_layer(
|
| 516 |
+
normal_reflectivity: normal_reflectivity,
|
| 517 |
+
grazing_reflectivity: grazing_reflectivity,
|
| 518 |
+
layer: glossy_reflection,
|
| 519 |
+
base: plastic_with_flakes,
|
| 520 |
+
weight: reflection_weight,
|
| 521 |
+
exponent: reflectivity_exponent
|
| 522 |
+
);
|
| 523 |
+
|
| 524 |
+
} in material (
|
| 525 |
+
surface: material_surface(
|
| 526 |
+
scattering: final_layer
|
| 527 |
+
),
|
| 528 |
+
|
| 529 |
+
volume: plastic.volume
|
| 530 |
+
);
|
| 531 |
+
|
| 532 |
+
|
| 533 |
+
export material metallic_plastic_simple_controls(
|
| 534 |
+
color diffuse_color = color(0.6940, 0.5831, 0.0493)
|
| 535 |
+
[[
|
| 536 |
+
::anno::display_name("Diffuse Color"),
|
| 537 |
+
::anno::description("The diffuse color of the plastic material"),
|
| 538 |
+
::anno::in_group("Appearance")
|
| 539 |
+
]],
|
| 540 |
+
float diffuse_weight = 0.5
|
| 541 |
+
[[
|
| 542 |
+
::anno::display_name("Diffuse Weight"),
|
| 543 |
+
::anno::description("The weight of the diffuse color of the plastic material. It is recommended to keep "
|
| 544 |
+
"the value around 0.5, lower values make the material appear more transparent while higher values make "
|
| 545 |
+
"it more opaque."),
|
| 546 |
+
::anno::in_group("Appearance"),
|
| 547 |
+
::anno::hard_range(0.f, 1.f)
|
| 548 |
+
]],
|
| 549 |
+
color transmissive_color = color(0.8665, 0.7769, 0.1559)
|
| 550 |
+
[[
|
| 551 |
+
::anno::display_name("Transmissive Color"),
|
| 552 |
+
::anno::description("The tinting of light scattering through the plastic material"),
|
| 553 |
+
::anno::in_group("Appearance")
|
| 554 |
+
]],
|
| 555 |
+
float reflection_roughness = 0.0
|
| 556 |
+
[[
|
| 557 |
+
::anno::display_name("Roughness"),
|
| 558 |
+
::anno::description("The roughness of the reflection on the plastic"),
|
| 559 |
+
::anno::in_group("Appearance"),
|
| 560 |
+
::anno::hard_range(0.f, 1.f)
|
| 561 |
+
]],
|
| 562 |
+
float distance_scale = 0.005
|
| 563 |
+
[[
|
| 564 |
+
::anno::display_name("Distance Scale"),
|
| 565 |
+
::anno::description("Scales how quickly light is absorbed. Set this value low enough to see "
|
| 566 |
+
"some light extinction taking place. Tip: Set 'diffuse_weight' to 0.0 while adjusting this "
|
| 567 |
+
"material parameter for your scene"),
|
| 568 |
+
::anno::in_group("Appearance")
|
| 569 |
+
]],
|
| 570 |
+
|
| 571 |
+
// Flakes Controls
|
| 572 |
+
color flake_color_1 = color(1.0f, 1.0f, 1.0f)
|
| 573 |
+
[[
|
| 574 |
+
::anno::display_name("Flakes Color"),
|
| 575 |
+
::anno::description("Flakes Color"),
|
| 576 |
+
::anno::in_group("Flakes")
|
| 577 |
+
]],
|
| 578 |
+
bool enable_color_randomization = true
|
| 579 |
+
[[
|
| 580 |
+
::anno::display_name("Flakes Color Randomization"),
|
| 581 |
+
::anno::description("Enables that a random flakes color will be chosen. Using 'Flakes Color Randomness' allows "
|
| 582 |
+
"to blend between the chosen reflection color for the flakes and an purely random chosen color."),
|
| 583 |
+
::anno::in_group("Flakes")
|
| 584 |
+
]],
|
| 585 |
+
float flake_color_randomness = 1.0
|
| 586 |
+
[[
|
| 587 |
+
::anno::display_name("Flakes Color Randomness"),
|
| 588 |
+
::anno::description("Incresing this value will blend towards a randomly chosen flakes color."),
|
| 589 |
+
::anno::in_group("Flakes"),
|
| 590 |
+
::anno::hard_range(0.f, 1.f),
|
| 591 |
+
::anno::enable_if("enable_color_randomization == true")
|
| 592 |
+
]],
|
| 593 |
+
uniform float flake_size = 0.1f
|
| 594 |
+
[[
|
| 595 |
+
::anno::display_name("Flakes Size"),
|
| 596 |
+
::anno::description("The size of the flakes in the material"),
|
| 597 |
+
::anno::in_group("Flakes")
|
| 598 |
+
]],
|
| 599 |
+
uniform float3 texture_scale = float3 ( 1.f , 1.f, 1.f)
|
| 600 |
+
[[
|
| 601 |
+
//::anno::hidden(),
|
| 602 |
+
::anno::display_name("Scale"),
|
| 603 |
+
::anno::description("Larger numbers increase the texture size."),
|
| 604 |
+
::nvidia::core_definitions::dimension(float3(1.0f, 1.0f, 1.0f)),
|
| 605 |
+
::anno::in_group("Transform")
|
| 606 |
+
]],
|
| 607 |
+
uniform float flake_amount = 0.1f
|
| 608 |
+
[[
|
| 609 |
+
::anno::display_name("Flakes Amount"),
|
| 610 |
+
::anno::description("The number of flakes used in the material, 0 meaning no flakes, 1 meaning that flakes cover the entire surface"),
|
| 611 |
+
::anno::in_group("Flakes"),
|
| 612 |
+
::anno::hard_range(0.f, 1.f)
|
| 613 |
+
]],
|
| 614 |
+
float flake_spread = 0.7f
|
| 615 |
+
[[
|
| 616 |
+
::anno::display_name("Flakes Spread"),
|
| 617 |
+
::anno::description("The amount of randomness in the orientation of the flakes. When set to zero, flakes are oriented along the surface normal. Higher values tilt the flakes stronger in a random direction."),
|
| 618 |
+
::anno::in_group("Flakes"),
|
| 619 |
+
::anno::hard_range(0.f, 1.f)
|
| 620 |
+
]]
|
| 621 |
+
|
| 622 |
+
)
|
| 623 |
+
[[
|
| 624 |
+
::anno::author("NVIDIA ARC"),
|
| 625 |
+
::anno::display_name("Plastic"),
|
| 626 |
+
::anno::description(DESCRIPTION),
|
| 627 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment")),
|
| 628 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.metallic_plastic_simple_controls.png"),
|
| 629 |
+
::anno::copyright_notice(COPYRIGHT),
|
| 630 |
+
::anno::hidden()
|
| 631 |
+
]] = Plastic_Thick_Translucent_Flakes(
|
| 632 |
+
absorption: ::math::pow(transmissive_color, 0.2),
|
| 633 |
+
scattering: color(0.5),
|
| 634 |
+
distance_scale: distance_scale,
|
| 635 |
+
diffuse_transmission_tint: ::math::pow(transmissive_color, 0.2),
|
| 636 |
+
diffuse_color: diffuse_color,
|
| 637 |
+
diffuse_weight: diffuse_weight,
|
| 638 |
+
reflection_roughness: reflection_roughness,
|
| 639 |
+
|
| 640 |
+
flake_color_1: flake_color_1,
|
| 641 |
+
enable_color_randomization: enable_color_randomization,
|
| 642 |
+
flake_color_randomness: flake_color_randomness,
|
| 643 |
+
flake_size: flake_size,
|
| 644 |
+
texture_scale: texture_scale,
|
| 645 |
+
flake_amount: flake_amount,
|
| 646 |
+
flake_spread: flake_spread
|
| 647 |
+
);
|
| 648 |
+
|
| 649 |
+
|
| 650 |
+
// 01 - Black
|
| 651 |
+
export material plastic_black(*)
|
| 652 |
+
[[
|
| 653 |
+
::anno::author("NVIDIA ARC"),
|
| 654 |
+
::anno::display_name("Metallic Plastic Black"),
|
| 655 |
+
::anno::description(DESCRIPTION),
|
| 656 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "dark", "black", "neutral")),
|
| 657 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_black.png"),
|
| 658 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 659 |
+
]] = metallic_plastic_simple_controls(
|
| 660 |
+
diffuse_color: color(0.034230),
|
| 661 |
+
diffuse_weight: .5,
|
| 662 |
+
transmissive_color: color(0.034230),
|
| 663 |
+
distance_scale: 0.002,
|
| 664 |
+
reflection_roughness: 0.05
|
| 665 |
+
);
|
| 666 |
+
|
| 667 |
+
|
| 668 |
+
// 02 - Dark Gray
|
| 669 |
+
export material plastic_dark_gray(*)
|
| 670 |
+
[[
|
| 671 |
+
::anno::author("NVIDIA ARC"),
|
| 672 |
+
::anno::display_name("Metallic Plastic Dark Gray"),
|
| 673 |
+
::anno::description(DESCRIPTION),
|
| 674 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "dark", "gray", "neutral")),
|
| 675 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_dark_gray.png"),
|
| 676 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 677 |
+
]] = metallic_plastic_simple_controls(
|
| 678 |
+
diffuse_color: color(0.127530),
|
| 679 |
+
diffuse_weight: .5,
|
| 680 |
+
transmissive_color: color(0.089194),
|
| 681 |
+
distance_scale: 0.002,
|
| 682 |
+
reflection_roughness: 0.05
|
| 683 |
+
);
|
| 684 |
+
|
| 685 |
+
|
| 686 |
+
// 03 - Light Gray
|
| 687 |
+
export material plastic_light_gray(*)
|
| 688 |
+
[[
|
| 689 |
+
::anno::author("NVIDIA ARC"),
|
| 690 |
+
::anno::display_name("Metallic Plastic Light Gray"),
|
| 691 |
+
::anno::description(DESCRIPTION),
|
| 692 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "light", "gray", "neutral")),
|
| 693 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_light_gray.png"),
|
| 694 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 695 |
+
]] = metallic_plastic_simple_controls(
|
| 696 |
+
diffuse_color: color(0.464741),
|
| 697 |
+
diffuse_weight: .5,
|
| 698 |
+
transmissive_color: color(0.358654),
|
| 699 |
+
distance_scale: 0.002,
|
| 700 |
+
reflection_roughness: 0.05
|
| 701 |
+
);
|
| 702 |
+
|
| 703 |
+
|
| 704 |
+
// 04 - White
|
| 705 |
+
export material plastic_white(*)
|
| 706 |
+
[[
|
| 707 |
+
::anno::author("NVIDIA ARC"),
|
| 708 |
+
::anno::display_name("Metallic Plastic White"),
|
| 709 |
+
::anno::description(DESCRIPTION),
|
| 710 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "light", "white", "neutral")),
|
| 711 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_white.png"),
|
| 712 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 713 |
+
]] = metallic_plastic_simple_controls(
|
| 714 |
+
diffuse_color: color(0.915750),
|
| 715 |
+
diffuse_weight: .5,
|
| 716 |
+
transmissive_color: color(0.812241),
|
| 717 |
+
distance_scale: 0.002,
|
| 718 |
+
reflection_roughness: 0.05
|
| 719 |
+
);
|
| 720 |
+
|
| 721 |
+
|
| 722 |
+
// 05 - Ivory White
|
| 723 |
+
export material plastic_ivory_white(*)
|
| 724 |
+
[[
|
| 725 |
+
::anno::author("NVIDIA ARC"),
|
| 726 |
+
::anno::display_name("Metallic Plastic Ivory White"),
|
| 727 |
+
::anno::description(DESCRIPTION),
|
| 728 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "white", "bright", "ivory", "warm")),
|
| 729 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_ivory_white.png"),
|
| 730 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 731 |
+
]] = metallic_plastic_simple_controls(
|
| 732 |
+
diffuse_color: color(0.899385, 0.843370, 0.694081),
|
| 733 |
+
diffuse_weight: .5,
|
| 734 |
+
transmissive_color: color(0.722672, 0.708298, 0.547994),
|
| 735 |
+
distance_scale: 0.002,
|
| 736 |
+
reflection_roughness: 0.05
|
| 737 |
+
);
|
| 738 |
+
|
| 739 |
+
|
| 740 |
+
// 06 - Lemon
|
| 741 |
+
export material plastic_lemon(*)
|
| 742 |
+
[[
|
| 743 |
+
::anno::author("NVIDIA ARC"),
|
| 744 |
+
::anno::display_name("Metallic Plastic Lemon"),
|
| 745 |
+
::anno::description(DESCRIPTION),
|
| 746 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "lemon", "yellow", "light", "warm")),
|
| 747 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_lemon.png"),
|
| 748 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 749 |
+
]] = metallic_plastic_simple_controls(
|
| 750 |
+
diffuse_color: color(0.859174, 0.875138, 0.039947),
|
| 751 |
+
diffuse_weight: .5,
|
| 752 |
+
transmissive_color: color(0.98211, 0.843370, 0.031551),
|
| 753 |
+
distance_scale: 0.002,
|
| 754 |
+
reflection_roughness: 0.05
|
| 755 |
+
);
|
| 756 |
+
|
| 757 |
+
|
| 758 |
+
// 07 - Yellow Orange
|
| 759 |
+
export material plastic_yellow_orange(*)
|
| 760 |
+
[[
|
| 761 |
+
::anno::author("NVIDIA ARC"),
|
| 762 |
+
::anno::display_name("Metallic Plastic Yellow"),
|
| 763 |
+
::anno::description(DESCRIPTION),
|
| 764 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "light", "orange", "yellow", "warm")),
|
| 765 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_yellow_orange.png"),
|
| 766 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 767 |
+
]] = metallic_plastic_simple_controls(
|
| 768 |
+
diffuse_color: color(0.875138, 0.612066, 0.039947),
|
| 769 |
+
diffuse_weight: .5,
|
| 770 |
+
transmissive_color: color(0.899385, 0.373615, 0.030257),
|
| 771 |
+
distance_scale: 0.002,
|
| 772 |
+
reflection_roughness: 0.05
|
| 773 |
+
);
|
| 774 |
+
|
| 775 |
+
|
| 776 |
+
// 08 - Orange
|
| 777 |
+
export material plastic_orange(*)
|
| 778 |
+
[[
|
| 779 |
+
::anno::author("NVIDIA ARC"),
|
| 780 |
+
::anno::display_name("Metallic Plastic Orange"),
|
| 781 |
+
::anno::description(DESCRIPTION),
|
| 782 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "orange", "warm")),
|
| 783 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_orange.png"),
|
| 784 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 785 |
+
]] = metallic_plastic_simple_controls(
|
| 786 |
+
diffuse_color: color(0.875138, 0.353741, 0.030257),
|
| 787 |
+
diffuse_weight: .5,
|
| 788 |
+
transmissive_color: color(0.891262, 0.420508, 0.022013),
|
| 789 |
+
distance_scale: 0.002,
|
| 790 |
+
reflection_roughness: 0.05
|
| 791 |
+
);
|
| 792 |
+
|
| 793 |
+
|
| 794 |
+
// 09 - Dark Orange
|
| 795 |
+
export material plastic_dark_orange(*)
|
| 796 |
+
[[
|
| 797 |
+
::anno::author("NVIDIA ARC"),
|
| 798 |
+
::anno::display_name("Metallic Plastic Dark Orange"),
|
| 799 |
+
::anno::description(DESCRIPTION),
|
| 800 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "dark", "orange", "warm")),
|
| 801 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_dark_orange.png"),
|
| 802 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 803 |
+
]] = metallic_plastic_simple_controls(
|
| 804 |
+
diffuse_color: color(0.535642, 0.127530, 0.022013),
|
| 805 |
+
diffuse_weight: .5,
|
| 806 |
+
transmissive_color: color(0.827726, 0.267358, 0.022013),
|
| 807 |
+
distance_scale: 0.002,
|
| 808 |
+
reflection_roughness: 0.05
|
| 809 |
+
);
|
| 810 |
+
|
| 811 |
+
|
| 812 |
+
// 10 - Red
|
| 813 |
+
export material plastic_red(*)
|
| 814 |
+
[[
|
| 815 |
+
::anno::author("NVIDIA ARC"),
|
| 816 |
+
::anno::display_name("Metallic Plastic Red"),
|
| 817 |
+
::anno::description(DESCRIPTION),
|
| 818 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "red", "cherry", "warm")),
|
| 819 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_red.png"),
|
| 820 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 821 |
+
]] = metallic_plastic_simple_controls(
|
| 822 |
+
diffuse_color: color(0.547994, 0.027755, 0.027755),
|
| 823 |
+
diffuse_weight: .5,
|
| 824 |
+
transmissive_color: color(0.875138, 0.022013, 0.022013),
|
| 825 |
+
distance_scale: 0.002,
|
| 826 |
+
reflection_roughness: 0.05
|
| 827 |
+
);
|
| 828 |
+
|
| 829 |
+
|
| 830 |
+
// 11 - Magenta
|
| 831 |
+
export material plastic_magenta(*)
|
| 832 |
+
[[
|
| 833 |
+
::anno::author("NVIDIA ARC"),
|
| 834 |
+
::anno::display_name("Metallic Plastic Magenta"),
|
| 835 |
+
::anno::description(DESCRIPTION),
|
| 836 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "magenta")),
|
| 837 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_magenta.png"),
|
| 838 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 839 |
+
]] = metallic_plastic_simple_controls(
|
| 840 |
+
diffuse_color: color(0.547994, 0.047776, 0.554227),
|
| 841 |
+
diffuse_weight: .5,
|
| 842 |
+
transmissive_color: color(0.722672, 0.030257, 0.566810),
|
| 843 |
+
distance_scale: 0.002,
|
| 844 |
+
reflection_roughness: 0.05
|
| 845 |
+
);
|
| 846 |
+
|
| 847 |
+
|
| 848 |
+
// 12 - Purple
|
| 849 |
+
export material plastic_purple(*)
|
| 850 |
+
[[
|
| 851 |
+
::anno::author("NVIDIA ARC"),
|
| 852 |
+
::anno::display_name("Metallic Plastic Purple"),
|
| 853 |
+
::anno::description(DESCRIPTION),
|
| 854 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "purple")),
|
| 855 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_purple.png"),
|
| 856 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 857 |
+
]] = metallic_plastic_simple_controls(
|
| 858 |
+
diffuse_color: color(0.193972, 0.017936, 0.464741),
|
| 859 |
+
diffuse_weight: .5,
|
| 860 |
+
transmissive_color: color(0.701170, 0.018913, 0.645555),
|
| 861 |
+
distance_scale: 0.002,
|
| 862 |
+
reflection_roughness: 0.05
|
| 863 |
+
);
|
| 864 |
+
|
| 865 |
+
|
| 866 |
+
// 13 - Dark Blue
|
| 867 |
+
export material plastic_dark_blue(*)
|
| 868 |
+
[[
|
| 869 |
+
::anno::author("NVIDIA ARC"),
|
| 870 |
+
::anno::display_name("Metallic Plastic Dark Blue"),
|
| 871 |
+
::anno::description(DESCRIPTION),
|
| 872 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "dark", "blue", "cool")),
|
| 873 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_dark_blue.png"),
|
| 874 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 875 |
+
]] = metallic_plastic_simple_controls(
|
| 876 |
+
diffuse_color: color(0.027755, 0.058187, 0.311180),
|
| 877 |
+
diffuse_weight: .5,
|
| 878 |
+
transmissive_color: color(0.027755, 0.058187, 0.311180),
|
| 879 |
+
distance_scale: 0.002,
|
| 880 |
+
reflection_roughness: 0.05
|
| 881 |
+
);
|
| 882 |
+
|
| 883 |
+
|
| 884 |
+
// 14 - Blue
|
| 885 |
+
export material plastic_blue(*)
|
| 886 |
+
[[
|
| 887 |
+
::anno::author("NVIDIA ARC"),
|
| 888 |
+
::anno::display_name("Metallic Plastic Blue"),
|
| 889 |
+
::anno::description(DESCRIPTION),
|
| 890 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "blue", "cool")),
|
| 891 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_blue.png"),
|
| 892 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 893 |
+
]] = metallic_plastic_simple_controls(
|
| 894 |
+
diffuse_color: color(0.034230, 0.173439, 0.843370),
|
| 895 |
+
diffuse_weight: .5,
|
| 896 |
+
transmissive_color: color(0.034230, 0.124741, 0.659224),
|
| 897 |
+
distance_scale: 0.002,
|
| 898 |
+
reflection_roughness: 0.05
|
| 899 |
+
);
|
| 900 |
+
|
| 901 |
+
|
| 902 |
+
// 15 - Sky Blue
|
| 903 |
+
export material plastic_sky_blue(*)
|
| 904 |
+
[[
|
| 905 |
+
::anno::author("NVIDIA ARC"),
|
| 906 |
+
::anno::display_name("Metallic Plastic Sky Blue"),
|
| 907 |
+
::anno::description(DESCRIPTION),
|
| 908 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "blue", "sky", "cool")),
|
| 909 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_sky_blue.png"),
|
| 910 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 911 |
+
]] = metallic_plastic_simple_controls(
|
| 912 |
+
diffuse_color: color(0.061907, 0.535642, 0.875138),
|
| 913 |
+
diffuse_weight: .5,
|
| 914 |
+
transmissive_color: color(0.028991, 0.358654, 0.673049),
|
| 915 |
+
distance_scale: 0.002,
|
| 916 |
+
reflection_roughness: 0.05
|
| 917 |
+
);
|
| 918 |
+
|
| 919 |
+
|
| 920 |
+
// 16 - Light Blue
|
| 921 |
+
export material plastic_light_blue(*)
|
| 922 |
+
[[
|
| 923 |
+
::anno::author("NVIDIA ARC"),
|
| 924 |
+
::anno::display_name("Metallic Plastic Light Blue"),
|
| 925 |
+
::anno::description(DESCRIPTION),
|
| 926 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "light", "blue", "cool")),
|
| 927 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_light_blue.png"),
|
| 928 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 929 |
+
]] = metallic_plastic_simple_controls(
|
| 930 |
+
diffuse_color: color(0.263175, 0.774227, 0.827726),
|
| 931 |
+
diffuse_weight: .5,
|
| 932 |
+
transmissive_color: color(0.163641, 0.592438, 0.759300),
|
| 933 |
+
distance_scale: 0.002,
|
| 934 |
+
reflection_roughness: 0.05
|
| 935 |
+
);
|
| 936 |
+
|
| 937 |
+
|
| 938 |
+
// 17 - Teal
|
| 939 |
+
export material plastic_teal(*)
|
| 940 |
+
[[
|
| 941 |
+
::anno::author("NVIDIA ARC"),
|
| 942 |
+
::anno::display_name("Metallic Plastic Teal"),
|
| 943 |
+
::anno::description(DESCRIPTION),
|
| 944 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "teal", "cool")),
|
| 945 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_teal.png"),
|
| 946 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 947 |
+
]] = metallic_plastic_simple_controls(
|
| 948 |
+
diffuse_color: color(0.037029, 0.579547, 0.329729),
|
| 949 |
+
diffuse_weight: .5,
|
| 950 |
+
transmissive_color: color(0.022013, 0.476177, 0.353741),
|
| 951 |
+
distance_scale: 0.002,
|
| 952 |
+
reflection_roughness: 0.05
|
| 953 |
+
);
|
| 954 |
+
|
| 955 |
+
|
| 956 |
+
// 18 - Dark Green
|
| 957 |
+
export material plastic_dark_green(*)
|
| 958 |
+
[[
|
| 959 |
+
::anno::author("NVIDIA ARC"),
|
| 960 |
+
::anno::display_name("Metallic Plastic Dark Green"),
|
| 961 |
+
::anno::description(DESCRIPTION),
|
| 962 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "dark", "green")),
|
| 963 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_dark_green.png"),
|
| 964 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 965 |
+
]] = metallic_plastic_simple_controls(
|
| 966 |
+
diffuse_color: color(0.034230, 0.141980, 0.034230),
|
| 967 |
+
diffuse_weight: .5,
|
| 968 |
+
transmissive_color: color(0.016988, 0.141980, 0.016988),
|
| 969 |
+
distance_scale: 0.002,
|
| 970 |
+
reflection_roughness: 0.05
|
| 971 |
+
);
|
| 972 |
+
|
| 973 |
+
|
| 974 |
+
// 19 - Green
|
| 975 |
+
export material plastic_green(*)
|
| 976 |
+
[[
|
| 977 |
+
::anno::author("NVIDIA ARC"),
|
| 978 |
+
::anno::display_name("Metallic Plastic Green"),
|
| 979 |
+
::anno::description(DESCRIPTION),
|
| 980 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "green")),
|
| 981 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_green.png"),
|
| 982 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 983 |
+
]] = metallic_plastic_simple_controls(
|
| 984 |
+
diffuse_color: color(0.016988, 0.311180, 0.016988),
|
| 985 |
+
diffuse_weight: .5,
|
| 986 |
+
transmissive_color: color(0.012664, 0.358654, 0.012664),
|
| 987 |
+
distance_scale: 0.002,
|
| 988 |
+
reflection_roughness: 0.05
|
| 989 |
+
);
|
| 990 |
+
|
| 991 |
+
|
| 992 |
+
// 20 - Light Green
|
| 993 |
+
export material plastic_light_green(*)
|
| 994 |
+
[[
|
| 995 |
+
::anno::author("NVIDIA ARC"),
|
| 996 |
+
::anno::display_name("Metallic Plastic Light Green"),
|
| 997 |
+
::anno::description(DESCRIPTION),
|
| 998 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "light", "green")),
|
| 999 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_light_green.png"),
|
| 1000 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 1001 |
+
]] = metallic_plastic_simple_controls(
|
| 1002 |
+
diffuse_color: color(0.030257, 0.687031, 0.027755),
|
| 1003 |
+
diffuse_weight: .5,
|
| 1004 |
+
transmissive_color: color(0.030257, 0.701170, 0.027755),
|
| 1005 |
+
distance_scale: 0.002,
|
| 1006 |
+
reflection_roughness: 0.05
|
| 1007 |
+
);
|
| 1008 |
+
|
| 1009 |
+
|
| 1010 |
+
// 21 - Lime Green
|
| 1011 |
+
export material plastic_lime_green(*)
|
| 1012 |
+
[[
|
| 1013 |
+
::anno::author("NVIDIA ARC"),
|
| 1014 |
+
::anno::display_name("Metallic Plastic Lime Green"),
|
| 1015 |
+
::anno::description(DESCRIPTION),
|
| 1016 |
+
::anno::key_words(string[]("plastic", "artificial", "scattering", "SSS", "diffuse", "translucent", "new", "shiny", "flakes", "metallic", "glitter", "pigment", "lime", "green", "light")),
|
| 1017 |
+
::anno::thumbnail("./.thumbs/Plastic_Thick_Translucent_Flakes.plastic_lime_green.png"),
|
| 1018 |
+
::anno::copyright_notice(COPYRIGHT)
|
| 1019 |
+
]] = metallic_plastic_simple_controls(
|
| 1020 |
+
diffuse_color: color(0.186989, 0.605484, 0.027755),
|
| 1021 |
+
diffuse_weight: .5,
|
| 1022 |
+
transmissive_color: color(0.204710, 0.701170, 0.022013),
|
| 1023 |
+
distance_scale: 0.002,
|
| 1024 |
+
reflection_roughness: 0.05
|
| 1025 |
+
);
|
MCV430_12FAN_CONF/simready_usd/materials/WhiteMode.mdl
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
// Copyright (c) 2019, NVIDIA CORPORATION. All rights reserved.
|
| 2 |
+
//
|
| 3 |
+
// NVIDIA CORPORATION and its licensors retain all intellectual property
|
| 4 |
+
// and proprietary rights in and to this software, related documentation
|
| 5 |
+
// and any modifications thereto. Any use, reproduction, disclosure or
|
| 6 |
+
// distribution of this software and related documentation without an express
|
| 7 |
+
// license agreement from NVIDIA CORPORATION is strictly prohibited.
|
| 8 |
+
//
|
| 9 |
+
|
| 10 |
+
// adjusted to be alittle darker, not harsh white, changed name to Whitemode
|
| 11 |
+
|
| 12 |
+
mdl 1.5;
|
| 13 |
+
import ::anno::*;
|
| 14 |
+
import ::df::diffuse_reflection_bsdf;
|
| 15 |
+
import ::state::normal;
|
| 16 |
+
|
| 17 |
+
export material WhiteMode(
|
| 18 |
+
|
| 19 |
+
color diffuse_color_constant = color(.99f)
|
| 20 |
+
[[
|
| 21 |
+
anno::display_name("Base Color"),
|
| 22 |
+
anno::description("This is the base color")
|
| 23 |
+
]]
|
| 24 |
+
)
|
| 25 |
+
=
|
| 26 |
+
let {
|
| 27 |
+
material_surface surface(
|
| 28 |
+
::df::diffuse_reflection_bsdf(diffuse_color_constant));
|
| 29 |
+
} in material(
|
| 30 |
+
thin_walled: false,
|
| 31 |
+
surface: surface);
|
MCV430_12FAN_CONF/simready_usd/payloads/external.usd
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:7f03307269c0d1854a4ec6f23cf6ad2e6c143ca50b762ee8781b87ff715e34a3
|
| 3 |
+
size 22325427
|
MCV430_12FAN_CONF/simready_usd/payloads/internal.usd
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:45fd80545793af759559ef8c44d1300f0e3471333f780e90c1e4a57249c78452
|
| 3 |
+
size 36159124
|
MCV430_12FAN_CONF/simready_usd/textures/ver_logo_tm_hrz_rgb_rev.png
ADDED
|
Git LFS Details
|