Skip to content

Commit

Permalink
Merge pull request #44 from AntonPalmqvist/dev
Browse files Browse the repository at this point in the history
Merge from dev
  • Loading branch information
AntonPalmqvist authored Dec 5, 2023
2 parents 554d81a + 4a2990e commit ffeb4c4
Show file tree
Hide file tree
Showing 15 changed files with 156 additions and 6 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.DS_Store
Binary file not shown.
Binary file added data/materials/coffee/coffee-reference-01.dng
Binary file not shown.
Binary file added data/materials/coffee/coffee-reference-01.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion deploy/assets/css/styles.min.css

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion deploy/assets/js/web-components.min.js

Large diffs are not rendered by default.

138 changes: 135 additions & 3 deletions deploy/materials.json
Original file line number Diff line number Diff line change
Expand Up @@ -243,6 +243,25 @@
"https://raw.githubusercontent.com/AntonPalmqvist/physically-based-api/main/reference/render/cobalt-cycles.png"
]
},
{
"name": "Coffee",
"color": [0.027, 0.019, 0.018],
"metalness": 0,
"roughness": 0,
"ior": 1.33,
"subsurfaceRadius": [10, 5, 1],
"density": 1000,
"viscosity": 1.002,
"category": ["Liquid"],
"description": "",
"sources": [
"https://github.com/AntonPalmqvist/physically-based-api/tree/main/data/materials/coffee/"
],
"tags": [""],
"reference": [
"https://raw.githubusercontent.com/AntonPalmqvist/physically-based-api/main/reference/render/coffee-cycles.png"
]
},
{
"name": "Concrete",
"color": [0.51, 0.51, 0.51],
Expand Down Expand Up @@ -407,6 +426,28 @@
"https://raw.githubusercontent.com/AntonPalmqvist/physically-based-api/main/reference/render/eye-sclera-cycles.png"
]
},
{
"name": "Gasoline",
"color": [1, 0.97, 0.617],
"metalness": 0,
"roughness": 0,
"ior": 1.427,
"transmission": 1,
"density": 770,
"viscosity": 0.6,
"category": ["Liquid"],
"description": "",
"sources": [
"https://en.wikipedia.org/wiki/Gasoline",
"https://www.researchgate.net/figure/Refractive-index-of-fuels-33-34_tbl1_277419833",
"https://www.engineeringtoolbox.com/fuels-densities-specific-volumes-d_166.html",
"http://hyperphysics.phy-astr.gsu.edu/hbase/Tables/viscosity.html"
],
"tags": ["petrol", "fuel"],
"reference": [
"https://raw.githubusercontent.com/AntonPalmqvist/physically-based-api/main/reference/render/gasoline-cycles.png"
]
},
{
"name": "Glass",
"color": [1, 1, 1],
Expand Down Expand Up @@ -543,14 +584,13 @@
"color": [0.164, 0.006, 0.002],
"metalness": 0,
"roughness": 0.1,
"ior": 1.4,
"ior": 1.3,
"subsurfaceRadius": [0.476, 0.058, 0.039],
"density": 1150,
"viscosity": 50000,
"category": ["Organic"],
"description": "",
"sources": [
"https://docs.arnoldrenderer.com/display/A5AFMUG/Subsurface",
"https://help.autodesk.com/view/ARNOL/ENU/?guid=arnold_user_guide_ac_standard_surface_ac_standard_subsurface_html",
"https://graphics.stanford.edu/papers/bssrdf/bssrdf.pdf",
"https://renderman.pixar.com/resources/RenderMan_20/subsurface.html",
Expand Down Expand Up @@ -689,6 +729,55 @@
"https://raw.githubusercontent.com/AntonPalmqvist/physically-based-api/main/reference/render/office-paper-cycles.png"
]
},
{
"name": "Pearl",
"color": [0.8, 0.75, 0.7],
"metalness": 0,
"roughness": 0.35,
"ior": 1.68,
"subsurfaceRadius": [0.3, 0.5, 0.3],
"thinFilmThickness": 420,
"thinFilmIor": 2,
"density": 0,
"category": ["Organic"],
"description": "The akoya pearl is a saltwater cultured pearl from the akoya oyster. Akoya are considered to be the classic pearl used for necklaces and other pearl jewelry. Nacre is the material of which pearls are composed and consists of aragonite crystal layers separated by conchiolin, a protein secreted by mollusk shells. The thickness of these layers determines the color of reflection from the nacre. The transmission interference color is complementary to the reflection interference color.",
"sources": [
"https://www.nature.com/articles/s41598-021-94737-w",
"https://rgl.s3.eu-central-1.amazonaws.com/media/papers/Guillen2020Pearlescent.pdf",
"https://www.gemstones-guide.com/Pearl.html",
"https://www.gemsociety.org/article/pearl-jewelry-and-gemstone-information/",
"https://refractiveindex.info/?shelf=main&book=CaCO3&page=Ghosh-o",
"https://en.wikipedia.org/wiki/Nacre"
],
"tags": ["nacre"],
"reference": [
"https://raw.githubusercontent.com/AntonPalmqvist/physically-based-api/main/reference/render/pearl-arnold.png"
]
},
{
"name": "Petroleum",
"color": [0.03, 0.027, 0.024],
"metalness": 0,
"roughness": 0,
"ior": 1.5,
"subsurfaceRadius": [3, 1, 0.25],
"density": 920,
"densityRange": [870, 1000],
"viscosity": 100,
"category": ["Liquid"],
"description": "The viscosity of crude oil is sensitive to temperature.",
"sources": [
"https://en.wikipedia.org/wiki/Petroleum",
"https://en.wikipedia.org/wiki/API_gravity",
"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9922782/",
"https://www.sciencedirect.com/science/article/abs/pii/S1350449520305636",
"https://www.sciencedirect.com/science/article/pii/S003442572200133X"
],
"tags": ["oil", "crude oil"],
"reference": [
"https://raw.githubusercontent.com/AntonPalmqvist/physically-based-api/main/reference/render/petroleum-cycles.png"
]
},
{
"name": "Plastic (PC)",
"color": [1, 1, 1],
Expand Down Expand Up @@ -808,6 +897,27 @@
"https://raw.githubusercontent.com/AntonPalmqvist/physically-based-api/main/reference/render/platinum-cycles.png"
]
},
{
"name": "Polyurethane",
"color": [1, 1, 1],
"metalness": 0,
"roughness": 0,
"ior": 1.6,
"transmission": 1,
"density": 0,
"category": ["Plastic"],
"description": "Modern car paints are nearly always an acrylic polyurethane \"enamel\" with a pigmented basecoat and a clear topcoat. It may be described as \"acrylic\", \"acrylic enamel\", \"urethane\", etc. and the clearcoat in particular may be described as a lacquer.",
"sources": [
"https://en.wikipedia.org/wiki/Automotive_paint",
"https://en.wikipedia.org/wiki/Lacquer#Acrylic_lacquers",
"https://hal.science/hal-04030017/document",
"https://patentscope.wipo.int/search/en/detail.jsf?docId=WO2011163461"
],
"tags": ["acrylic", "coat", "car paint", "lacquer"],
"reference": [
"https://raw.githubusercontent.com/AntonPalmqvist/physically-based-api/main/reference/render/polyurethane-cycles.png"
]
},
{
"name": "Salt",
"color": [0.8, 0.8, 0.8],
Expand Down Expand Up @@ -1072,13 +1182,35 @@
"sources": [
"https://seblagarde.wordpress.com/2011/08/17/feeding-a-physical-based-lighting-mode/",
"https://refractiveindex.info/?shelf=3d&book=crystals&page=ice",
"http://mapleintegration.com/sound_ab.php"
"https://web.archive.org/web/20230605174450/http://mapleintegration.com/sound_ab.php"
],
"tags": ["ice"],
"reference": [
"https://raw.githubusercontent.com/AntonPalmqvist/physically-based-api/main/reference/render/snow-cycles.png"
]
},
{
"name": "Soap Bubble",
"color": [1, 1, 1],
"metalness": 0,
"roughness": 0,
"ior": 1,
"transmission": 1,
"thinFilmThickness": 500,
"thinFilmIor": 1.4,
"density": 0,
"category": ["Organic"],
"description": "The colors of a soap bubble are the result of an interaction between the light reflected from the front and back surfaces of the soap film, a phenomenon known as thin-film interference. The thickness of a soap bubble can range between 10 nm and 1000 nm. It's thinner at the top due to gravity.",
"sources": [
"https://help.autodesk.com/view/ARNOL/ENU/?guid=arnold_user_guide_ac_standard_surface_ac_standard_thinfilm_html",
"https://soapbubble.fandom.com/wiki/Color_and_Film_Thickness",
"https://en.wikipedia.org/wiki/Thin-film_interference#Soap_bubble"
],
"tags": [""],
"reference": [
"https://raw.githubusercontent.com/AntonPalmqvist/physically-based-api/main/reference/render/soap-bubble-arnold.png"
]
},
{
"name": "Tire",
"color": [0.023, 0.023, 0.023],
Expand Down
9 changes: 8 additions & 1 deletion deploy/openapi-schema.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
openapi: 3.1.0
info:
version: '1.1'
version: '1.2'
title: Physically Based API
description: |-
This is a database of physically based values for CG artists.
Expand Down Expand Up @@ -120,6 +120,13 @@ components:
maxItems: 6
items:
type: number
thin_film_thickness:
type: number
description: The thickness of the thin film layer on the base (in nanometers).
thin_film_ior:
type: number
description: The index of refraction of the thin-film.
default: 1.5
density:
type: number
description: Density measured in kg/m3.
Expand Down
Binary file added reference/render/coffee-cycles.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added reference/render/gasoline-cycles.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added reference/render/pearl-arnold.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added reference/render/petroleum-cycles.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added reference/render/polyurethane-cycles.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added reference/render/soap-bubble-arnold.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
10 changes: 10 additions & 0 deletions schema-materials.json
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,16 @@
"minItems": 6,
"maxItems": 6
},
"thinFilmThickness": {
"description": "The thickness of the thin film layer on the base (in nanometers).",
"type": "number",
"default": 0
},
"thinFilmIor": {
"description": "The index of refraction of the thin-film.",
"type": "number",
"default": 1.5
},
"density": {
"description": "Density measured in kg/m3.",
"type": "number",
Expand Down

0 comments on commit ffeb4c4

Please sign in to comment.