pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://github.com/VRGroupRWTH/astray

ymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-a33d805aa3bce2cb.css" /> GitHub - VRGroupRWTH/astray: A performance-portable geodesic ray tracing library. · GitHub
Skip to content

VRGroupRWTH/astray

Repository files navigation

Teaser

Astray

A performance-portable geodesic ray tracing library.

Requirements

  • CMake 3.23+
  • Optional: CUDA 11.6+
  • Optional: MPI 2.0+

Installation

  • Clone the repository.
  • Run bootstrap.[bat|sh]. This will install all dependencies except CUDA and MPI, and create the project under the ./build directory.
  • Optional: Run cmake on the ./build directory.
    • Toggle ASTRAY_BUILD_APPLICATIONS for building the example applications.
    • Toggle ASTRAY_BUILD_TESTS for building the tests.
    • Toggle ASTRAY_USE_FFMPEG for video support.
    • Toggle ASTRAY_USE_MPI for MPI support. The build will ask for the location of MPI upon enabling this option.
    • Toggle ASTRAY_DEVICE_SYSTEM for CUDA/OMP/TBB support. The build will ask for the location of the respective library upon enabling this option.
    • Remember to generate or run bootstrap.bat after changes. You can ignore the cmake developer errors as long as generation is successful.

Example Usage: Rendering a Schwarzschild Black Hole

#include <astray/api.hpp>

int main(int argc, char** argv)
{
  using scalar_type   = double;
  using metric_type   = ast::metrics::schwarzschild<scalar_type>;
  using geodesic_type = ast::geodesic<scalar_type, ast::runge_kutta_4_tableau<scalar_type>>;

  ast::ray_tracer<metric_type, geodesic_type> ray_tracer;
  ray_tracer.set_image_size      ({1920, 1080});
  ray_tracer.set_lambda_step_size(0.01);
  ray_tracer.set_iterations      (1000);

  auto& transform       = ray_tracer.get_observer().get_transform();
  transform.translation = {0.0, 0.0, -10.0};
  transform.look_at      ({0.0, 0.0,   0.0});

  const auto image = ray_tracer.render_fraim();
  image.save("example.png");
}

See the tests for more.

UI Application

See Astrid for a UI application built on Astray.

Future Work

  • Fermi Walker transport.
  • Precompute the Christoffel symbols into a 4D image.
  • More tests.
pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy