Atrc
My path tracer
File Explorer
Download Latest Version (.zip)- bedroom.png
- classroom.png
- dining.png
- dragon.png
- editor.png
- fog.png
- food.png
- juice.png
- materials.png
- ao.png
- diffuse_light.png
- disk.png
- disney_bsdf.png
- env_light.png
- frosted_glass.png
- gbuffer.png
- geometric_entity.png
- glass.png
- heterogeneous_medium.png
- homogeneous.png
- ideal_diffuse.png
- metal_sphere.png
- mirror.png
- native_sky.png
- normal_mapping.png
- quad.png
- sphere.png
- triangle.png
- triangle_bvh.png
- doc.md
- CMakeLists.txt
- im3d.cpp
- im3d.h
- im3d_config.h
- im3d_math.h
- LICENSE
- avir.h
- cxxopts.hpp
- json.hpp
- LICENSE-APACHE-pcg-cpp
- LICENSE-avir
- LICENSE-cxxopts
- LICENSE-json
- LICENSE-MIT-pcg-cpp
- pcg_extras.hpp
- pcg_random.hpp
- pcg_uint128.hpp
- async_bench.cpp
- bench.cpp
- CMakeLists.txt
- formatter-bench.cpp
- latency.cpp
- meson.build
- utils.h
- ide.cmake
- spdlog.pc.in
- spdlogConfig.cmake.in
- spdlogCPack.cmake
- utils.cmake
- CMakeLists.txt
- example.cpp
- meson.build
- backtracer-inl.h
- backtracer.h
- circular_q.h
- console_globals.h
- file_helper-inl.h
- file_helper.h
- fmt_helper.h
- log_msg-inl.h
- log_msg.h
- log_msg_buffer-inl.h
- log_msg_buffer.h
- mpmc_blocking_q.h
- null_mutex.h
- os-inl.h
- os.h
- pattern_formatter-inl.h
- pattern_formatter.h
- periodic_worker-inl.h
- periodic_worker.h
- registry-inl.h
- registry.h
- synchronous_factory.h
- thread_pool-inl.h
- thread_pool.h
- chrono.h
- color.h
- compile.h
- core.h
- format-inl.h
- format.h
- LICENSE.rst
- locale.h
- ostream.h
- posix.h
- printf.h
- ranges.h
- safe-duration-cast.h
- bin_to_hex.h
- fmt.h
- ostr.h
- android_sink.h
- ansicolor_sink-inl.h
- ansicolor_sink.h
- base_sink-inl.h
- base_sink.h
- basic_file_sink-inl.h
- basic_file_sink.h
- daily_file_sink.h
- dist_sink.h
- dup_filter_sink.h
- msvc_sink.h
- null_sink.h
- ostream_sink.h
- rotating_file_sink-inl.h
- rotating_file_sink.h
- sink-inl.h
- sink.h
- stdout_color_sinks-inl.h
- stdout_color_sinks.h
- stdout_sinks-inl.h
- stdout_sinks.h
- syslog_sink.h
- systemd_sink.h
- wincolor_sink-inl.h
- wincolor_sink.h
- async.h
- async_logger-inl.h
- async_logger.h
- common-inl.h
- common.h
- formatter.h
- logger-inl.h
- logger.h
- spdlog-inl.h
- spdlog.h
- tweakme.h
- version.h
- .clang-format
- .clang-tidy
- clang_tidy.sh
- extract_version.py
- format.sh
- async.cpp
- color_sinks.cpp
- file_sinks.cpp
- fmt.cpp
- spdlog.cpp
- stdout_sinks.cpp
- catch.hpp
- catch.license
- CMakeLists.txt
- includes.h
- main.cpp
- meson.build
- test_async.cpp
- test_backtrace.cpp
- test_daily_logger.cpp
- test_dup_filter.cpp
- test_errors.cpp
- test_file_helper.cpp
- test_file_logging.cpp
- test_fmt_helper.cpp
- test_macros.cpp
- test_misc.cpp
- test_mpmc_q.cpp
- test_pattern_formatter.cpp
- test_registry.cpp
- test_sink.h
- test_stdout_api.cpp
- test_systemd.cpp
- utils.cpp
- utils.h
- .gitattributes
- .gitignore
- .travis.yml
- appveyor.yml
- CMakeLists.txt
- INSTALL
- LICENSE
- meson.build
- meson_options.txt
- README.md
- LICENSE
- utility
- cli.h
- main.cpp
- params.cpp
- CMakeLists.txt
- camera_panel.h
- gizmo_selector.h
- im3d_inst.h
- preview_window.h
- entity.h
- entity_factory.h
- geometric_entity.h
- envir_light.h
- envir_light_factory.h
- ibl.h
- native_sky.h
- no_envir_light.h
- box.h
- film_filter.h
- gaussian.h
- geometry.h
- geometry_factory.h
- sphere.h
- triangle_bvh.h
- asset_consts.h
- asset_load_dialog.h
- asset_loader.h
- asset_save_dialog.h
- asset_saver.h
- asset_section.h
- asset_version.h
- json_export.h
- json_export_context.h
- model_importer.h
- bssrdf_surface.h
- disney.h
- fabric.h
- glass.h
- ideal_diffuse.h
- invisible_surface.h
- material.h
- material_factory.h
- material_thumbnail.h
- metal.h
- mirror.h
- normal_map.h
- paper.h
- phong.h
- heterogeneous.h
- homogeneous.h
- medium.h
- medium_factory.h
- void.h
- post_processor.h
- post_processor_seq.h
- pp_aces.h
- pp_gamma.h
- pp_oidn_denoise.h
- pp_resize.h
- pp_save_gbuffer.h
- pp_save_to_img.h
- export_renderer.h
- export_renderer_ao.h
- export_renderer_particle.h
- export_renderer_pssmlt_pt.h
- export_renderer_pt.h
- export_renderer_restir.h
- export_renderer_restir_gi.h
- export_renderer_sppm.h
- export_renderer_vol_bdpt.h
- ao_widget.h
- bdpt_renderer_widget.h
- particle_tracer_widget.h
- path_tracer_widget.h
- ao.h
- bdpt.h
- framebuffer.h
- particle_renderer.h
- particle_tracer.h
- path_tracer.h
- per_pixel_renderer.h
- renderer.h
- renderer_widget.h
- image_resource_pool.h
- image_resource_pool_ui.h
- image_text_icon.h
- name_resource_pool.h
- name_resource_pool_ui.h
- entity_interface.h
- object_context.h
- resource.h
- resource_panel.h
- resource_panel.inl
- resource_pool.h
- resource_pool.inl
- resource_slot.h
- resource_slot.inl
- resource_widget.h
- resource_widget.inl
- thumbnail_provider.h
- scene_mgr.h
- scene_mgr_ui.h
- constant2d.h
- hdr.h
- image2d.h
- range.h
- solid_image2d.h
- texture2d.h
- texture2d_common_params.h
- texture2d_factory.h
- constant3d.h
- image3d.h
- range3d.h
- texture3d.h
- texture3d_common_params.h
- texture3d_factory.h
- collapsible.h
- color_holder.h
- combobox_without_wheel.h
- elided_label.h
- flow_layout.h
- qsignal_to_callback.h
- real_slider.h
- validator.h
- vec_input.h
- down_panel.h
- global_setting_widget.h
- GlobalSettingWidget.ui
- left_panel.h
- right_panel.h
- save_filename.h
- transform2d_widget.h
- transform3d_seq_widget.h
- transform3d_widget.h
- direct_transform3d.h
- common.h
- editor.h
- camera_panel.cpp
- gizmo_selector.cpp
- im3d_inst.cpp
- preview_window.cpp
- entity_factory.cpp
- geometric_entity.cpp
- envir_light_factory.cpp
- ibl.cpp
- native_sky.cpp
- box.cpp
- film_filter.cpp
- gaussian.cpp
- geometry_factory.cpp
- sphere.cpp
- triangle_bvh.cpp
- asset_load_dialog.cpp
- asset_loader.cpp
- asset_save_dialog.cpp
- asset_saver.cpp
- json_export.cpp
- json_export_context.cpp
- model_importer.cpp
- disney.cpp
- fabric.cpp
- glass.cpp
- ideal_diffuse.cpp
- invisible_surface.cpp
- material_factory.cpp
- material_thumbnail.cpp
- material_thumbnail_env.txt
- metal.cpp
- mirror.cpp
- normal_map.cpp
- paper.cpp
- phong.cpp
- heterogeneous.cpp
- homogeneous.cpp
- medium_factory.cpp
- void.cpp
- post_processor_seq.cpp
- pp_aces.cpp
- pp_gamma.cpp
- pp_oidn_denoise.cpp
- pp_resize.cpp
- pp_save_gbuffer.cpp
- pp_save_to_img.cpp
- export_renderer.cpp
- export_renderer_ao.cpp
- export_renderer_particle.cpp
- export_renderer_pssmlt_pt.cpp
- export_renderer_pt.cpp
- export_renderer_restir.cpp
- export_renderer_restir_gi.cpp
- export_renderer_sppm.cpp
- export_renderer_vol_bdpt.cpp
- AO.ui
- ao_widget.cpp
- bdpt_renderer_widget.cpp
- particle_tracer_widget.cpp
- path_tracer_widget.cpp
- PathTracer.ui
- ao.cpp
- bdpt.cpp
- framebuffer.cpp
- particle_renderer.cpp
- particle_tracer.cpp
- path_tracer.cpp
- per_pixel_renderer.cpp
- renderer_widget.cpp
- image_resource_pool.cpp
- name_resource_pool.cpp
- resource.cpp
- scene_mgr.cpp
- constant2d.cpp
- hdr.cpp
- image2d.cpp
- range.cpp
- solid_image2d.cpp
- texture2d_common_params.cpp
- texture2d_factory.cpp
- texture2d_ui.h
- constant3d.cpp
- image3d.cpp
- range3d.cpp
- texture3d_common_params.cpp
- texture3d_factory.cpp
- darkstyle.qss
- icon_branch_closed.png
- icon_branch_end.png
- icon_branch_more.png
- icon_branch_open.png
- icon_checkbox_checked.png
- icon_checkbox_checked_disabled.png
- icon_checkbox_checked_pressed.png
- icon_checkbox_indeterminate.png
- icon_checkbox_indeterminate_disabled.png
- icon_checkbox_indeterminate_pressed.png
- icon_checkbox_unchecked.png
- icon_checkbox_unchecked_disabled.png
- icon_checkbox_unchecked_pressed.png
- icon_close.png
- icon_radiobutton_checked.png
- icon_radiobutton_checked_disabled.png
- icon_radiobutton_checked_pressed.png
- icon_radiobutton_unchecked.png
- icon_radiobutton_unchecked_disabled.png
- icon_radiobutton_unchecked_pressed.png
- icon_restore.png
- icon_undock.png
- icon_vline.png
- UBUNTU-FONT-LICENSE
- Ubuntu-R.ttf
- DarkStyle.cpp
- DarkStyle.h
- darkstyle.qrc
- LICENSE.txt
- collapsible.cpp
- flow_layout.cpp
- real_slider.cpp
- vec_input.cpp
- down_panel.cpp
- global_setting_widget.cpp
- left_panel.cpp
- right_panel.cpp
- save_filename.cpp
- transform2d_widget.cpp
- transform3d_seq_widget.cpp
- transform3d_widget.cpp
- direct_transform3d.cpp
- editor.cpp
- main.cpp
- CMakeLists.txt
- aggregate_creators.h
- camera_creators.h
- entity_creators.h
- envir_light_creators.h
- film_filter_creators.h
- geometry_creators.h
- material_creators.h
- medium_creators.h
- post_processor_creators.h
- renderer_creators.h
- renderer_interactor_creators.h
- scene_creators.h
- texture2d_creators.h
- texture3d_creators.h
- bin_mesh.h
- config_cvt.h
- render_session.h
- texture3d_loader.h
- context.h
- factory.h
- help.h
- aggregate_creators.cpp
- camera_creators.cpp
- entity_creators.cpp
- envir_light_creators.cpp
- film_filter_creators.cpp
- geometry_creators.cpp
- material_creators.cpp
- medium_creators.cpp
- post_processor_creators.cpp
- renderer_creators.cpp
- renderer_interactor_creators.cpp
- scene_creators.cpp
- texture2d_creators.cpp
- texture3d_creators.cpp
- bin_mesh.cpp
- config_cvt.cpp
- render_session.cpp
- texture3d_loader.cpp
- factory.cpp
- CMakeLists.txt
- main.cpp
- CMakeLists.txt
- gui.h
- reporter.h
- gui.cpp
- reporter.cpp
- CMakeLists.txt
- aggregate.h
- bsdf.h
- bssrdf.h
- camera.h
- entity.h
- film_filter.h
- framebuffer.h
- geometry.h
- intersection.h
- light.h
- material.h
- medium.h
- post_processor.h
- render_target.h
- renderer.h
- renderer_interactor.h
- sampler.h
- scene.h
- texture2d.h
- texture3d.h
- aggregate.h
- camera.h
- entity.h
- envir_light.h
- film_filter.h
- geometry.h
- material.h
- medium.h
- post_processor.h
- renderer.h
- renderer_interactor.h
- scene.h
- texture2d.h
- texture3d.h
- bidir_path_tracing.h
- common.h
- direct_illum.h
- hash_grid.h
- particle_tracing.h
- path_tracing.h
- photon_mapping.h
- pssmlt.h
- config.h
- embree.h
- hashed_grid_aux.h
- logger.h
- parallel_grid.h
- perthread_samplers.h
- phase_function.h
- reflection.h
- reservoir.h
- sphere_aux.h
- triangle_aux.h
- common.h
- tracer.h
- embree_bvh.cpp
- entity_bvh.cpp
- native_aggregate.cpp
- thin_lens.cpp
- light.cpp
- renderer.cpp
- geometry_to_diffuse_light.cpp
- geometry_to_diffuse_light.h
- geometric.cpp
- env_sampler.h
- ibl.cpp
- native_sky.cpp
- box_filter.cpp
- gaussian_filter.cpp
- disk.cpp
- double_sided.cpp
- quad.cpp
- sphere.cpp
- transform_wrapper.cpp
- transformed_geometry.h
- triangle.cpp
- triangle_bvh.cpp
- triangle_bvh_embree.cpp
- normalized_diffusion.cpp
- normalized_diffusion.h
- separable.cpp
- separable.h
- aggregate.h
- component.h
- diffuse_comp.cpp
- diffuse_comp.h
- microfacet_refl_comp.cpp
- microfacet_refl_comp.h
- microfacet_refr_comp.cpp
- microfacet_refr_comp.h
- phong_specular_comp.cpp
- phong_specular_comp.h
- fresnel_point.h
- microfacet.cpp
- microfacet.h
- disney.cpp
- dream_works_fabric.cpp
- glass.cpp
- ideal_black.cpp
- ideal_black.h
- ideal_diffuse.cpp
- invisible_surface.cpp
- metal.cpp
- mirror.cpp
- paper.cpp
- paper_rho_dt.txt
- phong.cpp
- heterogeneous.cpp
- homogeneous.cpp
- medium_void.cpp
- aces.cpp
- gamma.cpp
- oidn_denoiser.cpp
- resize_img.cpp
- save_gbuffer.cpp
- save_to_img.cpp
- adjoint_pt.cpp
- ao.cpp
- perpixel_renderer.cpp
- perpixel_renderer.h
- pssmlt_pt.cpp
- pt.cpp
- restir.cpp
- restir_gi.cpp
- sppm.cpp
- vol_bdpt.cpp
- noout.cpp
- stdout.cpp
- scene_default.cpp
- checker_board.cpp
- constant2d.cpp
- hdr.cpp
- image.cpp
- solid_image.cpp
- constant3d.cpp
- image3d.cpp
- bidir_path_tracing.cpp
- direct_illum.cpp
- particle_tracing.cpp
- path_tracing.cpp
- photon_mapping.cpp
- pssmlt.cpp
- config.cpp
- embree.cpp
- common.cpp
- CMakeLists.txt
- .gitignore
- .gitmodules
- CMakeLists.txt
- LICENSE
- README.md
# Installation Guide
1. Get the code
git clone https://github.com/AirGuanZ/Atrc
Downloads the entire project code from GitHub to your computer.
cd Atrc
Moves into the project folder you just downloaded.
2. CMake
Medium RecommendedPrerequisites
mkdir build && cd build
Creates a folder to hold the build output and moves into it.
cmake ..
Analyzes the source code and generates build configuration files (must be run inside the build folder).
make
Compiles the code based on the generated build configuration to produce an executable.
Check that an executable was created inside the build folder, then run it directly (e.g. ./build/app_name).
// repository documentation
Was this content helpful?
(0 ratings)
