All Projects → glotzerlab → fresnel

glotzerlab / fresnel

Licence: BSD-3-Clause license
Publication quality path tracing in real time.

Programming Languages

C++
36643 projects - #6 most used programming language
python
139335 projects - #7 most used programming language
Cuda
1817 projects
CMake
9771 projects
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to fresnel

evplp
Implementation of Efficient Energy-Compensated VPLs using Photon Splatting (and various rendering techniques)
Stars: ✭ 26 (-67.5%)
Mutual labels:  optix, path-tracing
Nabla
OpenGL/OpenGL ES/Vulkan/CUDA/OptiX Modular Rendering Framework for PC/Linux/Android
Stars: ✭ 235 (+193.75%)
Mutual labels:  optix, path-tracing
rendering-fw
Rendering framework with rasterizers & path tracers implemented using Vulkan, OptiX & OpenGL
Stars: ✭ 81 (+1.25%)
Mutual labels:  optix, path-tracing
LuisaRender
High-Performance Multiple-Backend Renderer Based on LuisaCompute
Stars: ✭ 47 (-41.25%)
Mutual labels:  optix, path-tracing
ludwig
A lattice Boltzmann code for complex fluids
Stars: ✭ 35 (-56.25%)
Mutual labels:  soft-matter
bisml
Implementation of the paper: Adaptive BRDF-Oriented Multiple Importance Sampling of Many Lights
Stars: ✭ 26 (-67.5%)
Mutual labels:  path-tracing
droplet-render
Volumetric cloud modeling and rendering for Blender.
Stars: ✭ 29 (-63.75%)
Mutual labels:  path-tracing
ign-rendering
C++ library designed to provide an abstraction for different rendering engines. It offers unified APIs for creating 3D graphics applications.
Stars: ✭ 34 (-57.5%)
Mutual labels:  optix
nerv pathtracer
a pathtracer with physically based rendering in mind
Stars: ✭ 27 (-66.25%)
Mutual labels:  path-tracing
gatling
Hydra-enabled GPU path tracer that supports MaterialX and MDL.
Stars: ✭ 159 (+98.75%)
Mutual labels:  path-tracing
Signed
Signed is a 3D modeling and construction language based on Lua and SDFs. Signed will be available for macOS and iOS and is heavily optimized for Metal.
Stars: ✭ 90 (+12.5%)
Mutual labels:  path-tracing
webrays
WebRays - Ray Tracing on the Web
Stars: ✭ 38 (-52.5%)
Mutual labels:  path-tracing
tracer
Renderer using C++, Embree and USD to achieve Path Tracing techniques on the CPU
Stars: ✭ 40 (-50%)
Mutual labels:  path-tracing
LumillyRender
Monte Carlo path tracing implementation on Rust
Stars: ✭ 36 (-55%)
Mutual labels:  path-tracing
smallpt
☀️ The Rosetta smallpt (small path tracing) project
Stars: ✭ 68 (-15%)
Mutual labels:  path-tracing
fluctus
An interactive OpenCL wavefront path tracer
Stars: ✭ 55 (-31.25%)
Mutual labels:  path-tracing
GoldenSun
A path tracer based on hardware ray tracing
Stars: ✭ 20 (-75%)
Mutual labels:  path-tracing
OpenTK-PathTracer
C# OpenGL Path Tracer, Real-Time GPU accelerated
Stars: ✭ 22 (-72.5%)
Mutual labels:  path-tracing
ray-tracer
A simple ray tracing engine
Stars: ✭ 27 (-66.25%)
Mutual labels:  path-tracing
Lift
Vulkan Path Tracer with Optix Denoiser integration
Stars: ✭ 30 (-62.5%)
Mutual labels:  optix

fresnel

fresnel is a python library for path tracing publication quality images of soft matter simulations in real time. The fastest render performance is possible on NVIDIA GPUs using their OptiX ray tracing engine. fresnel also supports multi-core CPUs using Intel's Embree ray tracing kernels. Path tracing enables high quality global illumination and advanced rendering effects controlled by intuitive parameters (like roughness, specular, and metal).

fresnel Community

Subscribe to the fresnel-users mailing list to receive release announcements, post questions for advice on using the software, and discuss potential new features. File bug reports on fresnel's issue tracker. fresnel is an open source project. Please review the contributor's guide for more information before contributing.

Documentation

Read the tutorial and reference documentation on readthedocs. The tutorial is also available in Jupyter notebooks in the fresnel-examples repository.

Gallery

Here are a few samples of what fresnel can do:

nature chemistry cover art cuboid sample sphere sample

Installing fresnel

See the installation guide for details on installing fresnel with conda, docker, singularity, and compiling from source.

Example

This script generates the spheres gallery image:

import fresnel, numpy, PIL

data = numpy.load('spheres.npz')

scene = fresnel.Scene()
scene.lights = fresnel.light.cloudy()

geometry = fresnel.geometry.Sphere(
    scene,
    position = data['position'],
    radius = 0.5,
    outline_width = 0.1)

geometry.material = fresnel.material.Material(
    color = fresnel.color.linear([0.1, 0.8, 0.1]),
    roughness = 0.8,
    specular = 0.2)

out = fresnel.pathtrace(scene, samples=64,
                        light_samples=32,
                        w=580, h=580)
PIL.Image.fromarray(out[:], mode='RGBA').save('sphere.png')
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].