troisjs / Trois
✨ ThreeJS + VueJS 3 + ViteJS ⚡
Stars: ✭ 648
Programming Languages
javascript
184084 projects - #8 most used programming language
Projects that are alternatives of or similar to Trois
Vue Gl
Vue.js components rendering 3D WebGL graphics reactively with three.js
Stars: ✭ 434 (-33.02%)
Mutual labels: 3d, webgl, threejs, three-js
Threejs Sandbox
Set of experiments and extensions to THREE.js.
Stars: ✭ 163 (-74.85%)
Mutual labels: 3d, webgl, threejs, three-js
Glas
WebGL in WebAssembly with AssemblyScript
Stars: ✭ 278 (-57.1%)
Mutual labels: 3d, webgl, threejs, three-js
Andromeda
This is a WebGL recreation of the popular music video Gorillaz - Andromeda.
Stars: ✭ 145 (-77.62%)
Mutual labels: 3d, webgl, threejs
Lume
Create CSS3D/WebGL applications declaratively with HTML. Give regular DOM elements shadow and lighting.
Stars: ✭ 445 (-31.33%)
Mutual labels: 3d, webgl, threejs
Jeelizfacefilter
Javascript/WebGL lightweight face tracking library designed for augmented reality webcam filters. Features : multiple faces detection, rotation, mouth opening. Various integration examples are provided (Three.js, Babylon.js, FaceSwap, Canvas2D, CSS3D...).
Stars: ✭ 2,042 (+215.12%)
Mutual labels: 3d, webgl, threejs
Solar System Threejs
The Solar System: Modeled to scale with Three.js
Stars: ✭ 107 (-83.49%)
Mutual labels: 3d, webgl, threejs
Wechart
Create all the [ch]arts by cax or three.js - Cax 和 three.js 创造一切图[表]
Stars: ✭ 152 (-76.54%)
Mutual labels: 3d, webgl, threejs
Pathfinding Visualizer Threejs
A visualizer for pathfinding algorithms in 3D with maze generation, first-person view and device camera input.
Stars: ✭ 209 (-67.75%)
Mutual labels: 3d, webgl, threejs
Enable3d
🕹️ Standalone 3D Framework / Physics for three.js (using ammo.js) / 3D extension for Phaser 3
Stars: ✭ 271 (-58.18%)
Mutual labels: 3d, webgl, threejs
3d Force Graph
3D force-directed graph component using ThreeJS/WebGL
Stars: ✭ 2,386 (+268.21%)
Mutual labels: 3d, webgl, threejs
Lba2remake
A Little Big Adventure 2 / Twinsen's Odyssey reimplementation in JavaScript / Three.js / React
Stars: ✭ 116 (-82.1%)
Mutual labels: 3d, webgl, threejs
React Three Editable
👀 ✏️ Edit your react-three-fiber scene with a visual editor without giving up control over your code.
Stars: ✭ 261 (-59.72%)
Mutual labels: 3d, webgl, threejs
Livecodelab
a web based livecoding environment
Stars: ✭ 276 (-57.41%)
Mutual labels: webgl, threejs, three-js
React 3d Viewer
A 3D model viewer component based on react.js 一个基于react.js的组件化3d模型查看工具
Stars: ✭ 100 (-84.57%)
Mutual labels: 3d, webgl, threejs
Giojs
🌏 A Declarative 3D Globe Data Visualization Library built with Three.js
Stars: ✭ 1,528 (+135.8%)
Mutual labels: 3d, webgl, threejs
Glmaps
Data visualization examples and tutorials from scratch. 数据可视化示例代码集与新手学习教程。
Stars: ✭ 288 (-55.56%)
Mutual labels: 3d, webgl, threejs
✨ ThreeJS + VueJS 3 + ViteJS ⚡
Trois is a french word, it means Three.
- 💻 Examples (wip) : https://troisjs.github.io/ (sources)
- 📖 Doc (wip) : https://troisjs.github.io/guide/ (repo)
- 🚀 Codepen examples : https://codepen.io/collection/AxoWoz
I wanted to code something similar to react-three-fiber but for VueJS.
I started from scratch, I will rewrite some of my WebGL demos to see if this little toy can do the job.
Usage (CDN)
TroisJS is really simple and easy to use :
<div id="app">
<renderer ref="renderer" antialias orbit-ctrl resize="window">
<camera :position="{ z: 10 }"></camera>
<scene>
<point-light :position="{ y: 50, z: 50 }"></point-light>
<box ref="box" :rotation="{ y: Math.PI / 4, z: Math.PI / 4 }">
<lambert-material></lambert-material>
</box>
</scene>
</renderer>
</div>
<script type="module">
import { createApp } from 'https://unpkg.com/[email protected]/build/trois.module.cdn.min.js';
createApp({
mounted() {
const renderer = this.$refs.renderer;
const box = this.$refs.box.mesh;
renderer.onBeforeRender(() => {
box.rotation.x += 0.01;
});
}
}).mount('#app');;
</script>
Read more on https://troisjs.github.io/guide/
HMR
Thanks to VueJS/ViteJS, TroisJS use watchers and HMR to update ThreeJS objects when you update a template or a prop. This means the result in your browser will be automatically updated without reloading all the stuff. This is really helpful when you are creating a TroisJS Scene.
Features
- [ ] Lights
- [x] AmbientLight
- [x] DirectionalLight
- [x] HemisphereLight
- [x] PointLight
- [x] RectAreaLight
- [x] SpotLight
- [ ] Materials
- [x] Basic
- [x] Lambert
- [x] Mapcap
- [x] Phong
- [x] Physical
- [x] Standard
- [x] SubSurface
- [x] Toon
- [ ] Geometries
- [x] Box
- [x] Circle
- [x] Cone
- [x] Cylinder
- [x] Dodecahedron
- [x] Icosahedron
- [x] Lathe
- [x] Octahedron
- [x] Polyhedron
- [x] Ring
- [x] Sphere
- [x] Tetrahedron
- [x] Torus
- [x] TorusKnot
- [x] Tube
- [ ] Post Processing
- [x] EffectComposer
- [x] BokehPass
- [x] FilmPass
- [x] FXAAPass
- [x] HalftonePass
- [x] Renderpass
- [x] SMAAPass
- [x] UnrealBloomPass
- [x] TiltShiftPass
- [x] ZoomBlurPass
- [x] EffectComposer
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].