├── README.md ├── fig ├── cube_camera │ ├── optimize_camera.gif │ ├── optimize_camera.png │ ├── optimize_camera2.gif │ ├── optimize_camera2.png │ ├── optimize_camera_loss.png │ └── optimize_camera_loss2.png ├── cube_mesh │ ├── cube-gaussian-mesh.gif │ ├── cube_mesh.png │ └── cube_mesh_loss.png ├── optimize_lighting │ ├── optimize_lighting.gif │ ├── optimize_lighting.png │ └── optimize_lighting_loss.png ├── optimize_material │ ├── optimize_material.gif │ ├── optimize_material.png │ └── optimize_material_loss.png └── triangle_mesh │ ├── optimize_vertices_triangle.gif │ ├── optimize_vertices_triangle.png │ ├── optimize_vertices_triangle2.gif │ ├── optimize_vertices_triangle2.png │ ├── optimize_vertices_triangle_loss.png │ └── optimize_vertices_triangle_loss2.png ├── obj ├── cube.obj ├── sphere_642.obj └── triangle.obj └── renderer ├── aggregations.py ├── classes.py ├── kernels.py ├── losses.py ├── obj_loader.py ├── optimize_camera.ipynb ├── optimize_lighting.ipynb ├── optimize_material.ipynb ├── optimize_vertex.ipynb ├── shadings.py └── util_general.py /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/README.md -------------------------------------------------------------------------------- /fig/cube_camera/optimize_camera.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/cube_camera/optimize_camera.gif -------------------------------------------------------------------------------- /fig/cube_camera/optimize_camera.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/cube_camera/optimize_camera.png -------------------------------------------------------------------------------- /fig/cube_camera/optimize_camera2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/cube_camera/optimize_camera2.gif -------------------------------------------------------------------------------- /fig/cube_camera/optimize_camera2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/cube_camera/optimize_camera2.png -------------------------------------------------------------------------------- /fig/cube_camera/optimize_camera_loss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/cube_camera/optimize_camera_loss.png -------------------------------------------------------------------------------- /fig/cube_camera/optimize_camera_loss2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/cube_camera/optimize_camera_loss2.png -------------------------------------------------------------------------------- /fig/cube_mesh/cube-gaussian-mesh.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/cube_mesh/cube-gaussian-mesh.gif -------------------------------------------------------------------------------- /fig/cube_mesh/cube_mesh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/cube_mesh/cube_mesh.png -------------------------------------------------------------------------------- /fig/cube_mesh/cube_mesh_loss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/cube_mesh/cube_mesh_loss.png -------------------------------------------------------------------------------- /fig/optimize_lighting/optimize_lighting.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/optimize_lighting/optimize_lighting.gif -------------------------------------------------------------------------------- /fig/optimize_lighting/optimize_lighting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/optimize_lighting/optimize_lighting.png -------------------------------------------------------------------------------- /fig/optimize_lighting/optimize_lighting_loss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/optimize_lighting/optimize_lighting_loss.png -------------------------------------------------------------------------------- /fig/optimize_material/optimize_material.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/optimize_material/optimize_material.gif -------------------------------------------------------------------------------- /fig/optimize_material/optimize_material.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/optimize_material/optimize_material.png -------------------------------------------------------------------------------- /fig/optimize_material/optimize_material_loss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/optimize_material/optimize_material_loss.png -------------------------------------------------------------------------------- /fig/triangle_mesh/optimize_vertices_triangle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/triangle_mesh/optimize_vertices_triangle.gif -------------------------------------------------------------------------------- /fig/triangle_mesh/optimize_vertices_triangle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/triangle_mesh/optimize_vertices_triangle.png -------------------------------------------------------------------------------- /fig/triangle_mesh/optimize_vertices_triangle2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/triangle_mesh/optimize_vertices_triangle2.gif -------------------------------------------------------------------------------- /fig/triangle_mesh/optimize_vertices_triangle2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/triangle_mesh/optimize_vertices_triangle2.png -------------------------------------------------------------------------------- /fig/triangle_mesh/optimize_vertices_triangle_loss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/triangle_mesh/optimize_vertices_triangle_loss.png -------------------------------------------------------------------------------- /fig/triangle_mesh/optimize_vertices_triangle_loss2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/fig/triangle_mesh/optimize_vertices_triangle_loss2.png -------------------------------------------------------------------------------- /obj/cube.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/obj/cube.obj -------------------------------------------------------------------------------- /obj/sphere_642.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/obj/sphere_642.obj -------------------------------------------------------------------------------- /obj/triangle.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/obj/triangle.obj -------------------------------------------------------------------------------- /renderer/aggregations.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/renderer/aggregations.py -------------------------------------------------------------------------------- /renderer/classes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/renderer/classes.py -------------------------------------------------------------------------------- /renderer/kernels.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/renderer/kernels.py -------------------------------------------------------------------------------- /renderer/losses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/renderer/losses.py -------------------------------------------------------------------------------- /renderer/obj_loader.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/renderer/obj_loader.py -------------------------------------------------------------------------------- /renderer/optimize_camera.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/renderer/optimize_camera.ipynb -------------------------------------------------------------------------------- /renderer/optimize_lighting.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/renderer/optimize_lighting.ipynb -------------------------------------------------------------------------------- /renderer/optimize_material.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/renderer/optimize_material.ipynb -------------------------------------------------------------------------------- /renderer/optimize_vertex.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/renderer/optimize_vertex.ipynb -------------------------------------------------------------------------------- /renderer/shadings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/renderer/shadings.py -------------------------------------------------------------------------------- /renderer/util_general.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Theo-Wu/Differentiable-Rasterizer-with-JAX/HEAD/renderer/util_general.py --------------------------------------------------------------------------------