├── .gitignore ├── .prettierrc ├── .yarnrc.yml ├── LICENSE ├── README.md ├── assets ├── configurator.png └── lamina.png ├── examples ├── README.md ├── complex-materials │ ├── .codesandbox │ │ └── tasks.json │ ├── .gitignore │ ├── README.md │ ├── csb.vite.config.js │ ├── index.html │ ├── package.json │ ├── public │ │ ├── favicon.svg │ │ ├── fonts │ │ │ └── Roboto_Bold.json │ │ └── lighting_bunny_copy.gltf │ ├── src │ │ ├── App.tsx │ │ ├── Blob.tsx │ │ ├── Bunny.tsx │ │ ├── Floor.tsx │ │ ├── Lighting.tsx │ │ ├── Marble.tsx │ │ ├── Tag.tsx │ │ ├── Text.tsx │ │ ├── index.css │ │ ├── index.tsx │ │ ├── react-app-env.d.ts │ │ └── vite-env.d.ts │ ├── thumbnail.png │ ├── tsconfig.json │ ├── vite.config.js │ └── yarn.lock ├── example-configurator │ ├── .codesandbox │ │ └── tasks.json │ ├── csb.vite.config.js │ ├── index.html │ ├── package.json │ ├── public │ │ ├── favicon.svg │ │ ├── initialMaterial.json │ │ └── monkey.glb │ ├── src │ │ ├── App.tsx │ │ ├── Monkey.tsx │ │ ├── index.css │ │ ├── index.tsx │ │ ├── types.ts │ │ └── vite-env.d.ts │ ├── tsconfig.json │ ├── vite.config.js │ └── yarn.lock ├── example-vanilla │ ├── .codesandbox │ │ └── tasks.json │ ├── .gitignore │ ├── csb.vite.config.js │ ├── index.html │ ├── package.json │ ├── public │ │ └── favicon.svg │ ├── src │ │ ├── main.ts │ │ ├── style.css │ │ └── vite-env.d.ts │ ├── tsconfig.json │ ├── vite.config.js │ └── yarn.lock └── layer-materials │ ├── .codesandbox │ └── tasks.json │ ├── csb.vite.config.js │ ├── index.html │ ├── package.json │ ├── public │ └── favicon.svg │ ├── src │ ├── App.jsx │ ├── index.jsx │ └── styles.css │ ├── thumbnail.png │ └── vite.config.js ├── package.json ├── scripts ├── link.sh ├── publish.sh └── upgrade.sh ├── src ├── chunks │ ├── BlendModes.ts │ ├── Helpers.ts │ └── Noise.ts ├── core │ ├── Abstract.ts │ ├── Color.ts │ ├── Depth.ts │ ├── Displace.ts │ ├── Fresnel.ts │ ├── Gradient.ts │ ├── Matcap.ts │ ├── Noise.ts │ ├── Normal.ts │ └── Texture.ts ├── debug.tsx ├── index.tsx ├── types.ts ├── utils │ ├── ExportUtils.ts │ └── Functions.ts └── vanilla.ts ├── tsconfig.json ├── vite.config.ts └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/.prettierrc -------------------------------------------------------------------------------- /.yarnrc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/.yarnrc.yml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/README.md -------------------------------------------------------------------------------- /assets/configurator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/assets/configurator.png -------------------------------------------------------------------------------- /assets/lamina.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/assets/lamina.png -------------------------------------------------------------------------------- /examples/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/README.md -------------------------------------------------------------------------------- /examples/complex-materials/.codesandbox/tasks.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/.codesandbox/tasks.json -------------------------------------------------------------------------------- /examples/complex-materials/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/.gitignore -------------------------------------------------------------------------------- /examples/complex-materials/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/README.md -------------------------------------------------------------------------------- /examples/complex-materials/csb.vite.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/csb.vite.config.js -------------------------------------------------------------------------------- /examples/complex-materials/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/index.html -------------------------------------------------------------------------------- /examples/complex-materials/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/package.json -------------------------------------------------------------------------------- /examples/complex-materials/public/favicon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/public/favicon.svg -------------------------------------------------------------------------------- /examples/complex-materials/public/fonts/Roboto_Bold.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/public/fonts/Roboto_Bold.json -------------------------------------------------------------------------------- /examples/complex-materials/public/lighting_bunny_copy.gltf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/public/lighting_bunny_copy.gltf -------------------------------------------------------------------------------- /examples/complex-materials/src/App.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/src/App.tsx -------------------------------------------------------------------------------- /examples/complex-materials/src/Blob.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/src/Blob.tsx -------------------------------------------------------------------------------- /examples/complex-materials/src/Bunny.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/src/Bunny.tsx -------------------------------------------------------------------------------- /examples/complex-materials/src/Floor.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/src/Floor.tsx -------------------------------------------------------------------------------- /examples/complex-materials/src/Lighting.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/src/Lighting.tsx -------------------------------------------------------------------------------- /examples/complex-materials/src/Marble.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/src/Marble.tsx -------------------------------------------------------------------------------- /examples/complex-materials/src/Tag.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/src/Tag.tsx -------------------------------------------------------------------------------- /examples/complex-materials/src/Text.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/src/Text.tsx -------------------------------------------------------------------------------- /examples/complex-materials/src/index.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/src/index.css -------------------------------------------------------------------------------- /examples/complex-materials/src/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/src/index.tsx -------------------------------------------------------------------------------- /examples/complex-materials/src/react-app-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /examples/complex-materials/src/vite-env.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/src/vite-env.d.ts -------------------------------------------------------------------------------- /examples/complex-materials/thumbnail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/thumbnail.png -------------------------------------------------------------------------------- /examples/complex-materials/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/tsconfig.json -------------------------------------------------------------------------------- /examples/complex-materials/vite.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/vite.config.js -------------------------------------------------------------------------------- /examples/complex-materials/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/complex-materials/yarn.lock -------------------------------------------------------------------------------- /examples/example-configurator/.codesandbox/tasks.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/.codesandbox/tasks.json -------------------------------------------------------------------------------- /examples/example-configurator/csb.vite.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/csb.vite.config.js -------------------------------------------------------------------------------- /examples/example-configurator/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/index.html -------------------------------------------------------------------------------- /examples/example-configurator/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/package.json -------------------------------------------------------------------------------- /examples/example-configurator/public/favicon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/public/favicon.svg -------------------------------------------------------------------------------- /examples/example-configurator/public/initialMaterial.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/public/initialMaterial.json -------------------------------------------------------------------------------- /examples/example-configurator/public/monkey.glb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/public/monkey.glb -------------------------------------------------------------------------------- /examples/example-configurator/src/App.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/src/App.tsx -------------------------------------------------------------------------------- /examples/example-configurator/src/Monkey.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/src/Monkey.tsx -------------------------------------------------------------------------------- /examples/example-configurator/src/index.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/src/index.css -------------------------------------------------------------------------------- /examples/example-configurator/src/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/src/index.tsx -------------------------------------------------------------------------------- /examples/example-configurator/src/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/src/types.ts -------------------------------------------------------------------------------- /examples/example-configurator/src/vite-env.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/src/vite-env.d.ts -------------------------------------------------------------------------------- /examples/example-configurator/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/tsconfig.json -------------------------------------------------------------------------------- /examples/example-configurator/vite.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/vite.config.js -------------------------------------------------------------------------------- /examples/example-configurator/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-configurator/yarn.lock -------------------------------------------------------------------------------- /examples/example-vanilla/.codesandbox/tasks.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-vanilla/.codesandbox/tasks.json -------------------------------------------------------------------------------- /examples/example-vanilla/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-vanilla/.gitignore -------------------------------------------------------------------------------- /examples/example-vanilla/csb.vite.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-vanilla/csb.vite.config.js -------------------------------------------------------------------------------- /examples/example-vanilla/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-vanilla/index.html -------------------------------------------------------------------------------- /examples/example-vanilla/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-vanilla/package.json -------------------------------------------------------------------------------- /examples/example-vanilla/public/favicon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-vanilla/public/favicon.svg -------------------------------------------------------------------------------- /examples/example-vanilla/src/main.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-vanilla/src/main.ts -------------------------------------------------------------------------------- /examples/example-vanilla/src/style.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-vanilla/src/style.css -------------------------------------------------------------------------------- /examples/example-vanilla/src/vite-env.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-vanilla/src/vite-env.d.ts -------------------------------------------------------------------------------- /examples/example-vanilla/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-vanilla/tsconfig.json -------------------------------------------------------------------------------- /examples/example-vanilla/vite.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-vanilla/vite.config.js -------------------------------------------------------------------------------- /examples/example-vanilla/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/example-vanilla/yarn.lock -------------------------------------------------------------------------------- /examples/layer-materials/.codesandbox/tasks.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/layer-materials/.codesandbox/tasks.json -------------------------------------------------------------------------------- /examples/layer-materials/csb.vite.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/layer-materials/csb.vite.config.js -------------------------------------------------------------------------------- /examples/layer-materials/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/layer-materials/index.html -------------------------------------------------------------------------------- /examples/layer-materials/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/layer-materials/package.json -------------------------------------------------------------------------------- /examples/layer-materials/public/favicon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/layer-materials/public/favicon.svg -------------------------------------------------------------------------------- /examples/layer-materials/src/App.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/layer-materials/src/App.jsx -------------------------------------------------------------------------------- /examples/layer-materials/src/index.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/layer-materials/src/index.jsx -------------------------------------------------------------------------------- /examples/layer-materials/src/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/layer-materials/src/styles.css -------------------------------------------------------------------------------- /examples/layer-materials/thumbnail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/layer-materials/thumbnail.png -------------------------------------------------------------------------------- /examples/layer-materials/vite.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/examples/layer-materials/vite.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/package.json -------------------------------------------------------------------------------- /scripts/link.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/scripts/link.sh -------------------------------------------------------------------------------- /scripts/publish.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/scripts/publish.sh -------------------------------------------------------------------------------- /scripts/upgrade.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/scripts/upgrade.sh -------------------------------------------------------------------------------- /src/chunks/BlendModes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/chunks/BlendModes.ts -------------------------------------------------------------------------------- /src/chunks/Helpers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/chunks/Helpers.ts -------------------------------------------------------------------------------- /src/chunks/Noise.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/chunks/Noise.ts -------------------------------------------------------------------------------- /src/core/Abstract.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/core/Abstract.ts -------------------------------------------------------------------------------- /src/core/Color.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/core/Color.ts -------------------------------------------------------------------------------- /src/core/Depth.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/core/Depth.ts -------------------------------------------------------------------------------- /src/core/Displace.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/core/Displace.ts -------------------------------------------------------------------------------- /src/core/Fresnel.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/core/Fresnel.ts -------------------------------------------------------------------------------- /src/core/Gradient.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/core/Gradient.ts -------------------------------------------------------------------------------- /src/core/Matcap.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/core/Matcap.ts -------------------------------------------------------------------------------- /src/core/Noise.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/core/Noise.ts -------------------------------------------------------------------------------- /src/core/Normal.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/core/Normal.ts -------------------------------------------------------------------------------- /src/core/Texture.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/core/Texture.ts -------------------------------------------------------------------------------- /src/debug.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/debug.tsx -------------------------------------------------------------------------------- /src/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/index.tsx -------------------------------------------------------------------------------- /src/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/types.ts -------------------------------------------------------------------------------- /src/utils/ExportUtils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/utils/ExportUtils.ts -------------------------------------------------------------------------------- /src/utils/Functions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/utils/Functions.ts -------------------------------------------------------------------------------- /src/vanilla.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/src/vanilla.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/tsconfig.json -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/vite.config.ts -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pmndrs/lamina/HEAD/yarn.lock --------------------------------------------------------------------------------