dieselsky

command module
v0.0.0-...-fbbe3d4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 24, 2024 License: GPL-3.0 Imports: 4 Imported by: 0

README

Dieselsky

Physical based sky rendering in go

This package allows you to create atmospheric renders into a disk in JPG format using GO!

Installation

go build
./dieselsky <height> <width> <clamped> <prefix>

For example

./dieselsky 4096 4096 true dome

Rim_Glow

Note: Atmosphere package assumes to be working in meters to include all physical phenomena including wavelengths astronomical measurements

Coefficients are based off of the surface layer coefficients for Rayleigh and Mie scattering phenomena future work can be done to move non normalized images into an HDR format for Global Environmental lights.

We can also extend the framework for atmosphere into a more generalized Rayleigh/Mie Scatter framework to allow for different Mie Scattering solutions during weather environmental changes and descriptions

This framework in the future should be updated to incorporate a handler for Electron Node dispatch requests

Include options for detailed Rayleight / Mie Scatter and height configurations for complete control over the model for users to include all configurable options

API Usage

Create a new atmosphere object and create textures

mSky := NewAtmosphere(45.0, 0.0)
mSky.SetDay(200.2)
base := "sky_"
for i := 0; i < 10; i++ {
  filename := base + strconv.FormatInt(int64(i), 10) + ".png"
  mSky.StepDay(1 + float32(i)/10)
  mSky.CreateTexture(256, 256, filename)
}

Notes

  • Next update will fix the celestial observer model.
  • Fixed Mie Scattering Error where sun disk failed to render
  • Adjust Sky.Light.Lx.Flux settings for sun intensity. Default (20.5)
  • Adjust Mie Scattering Phase Function by tuning g variable, forward scatter coefficient
  • BetaR , BetaM correspond to the extinction coefficients in RGB tristimulus color space. Tune these vectors according to atmopsheric composition to affect atmospheric colors

Fixes

  • Eliminate Negative View Vector Evaluations
  • Faciliate Parameter Tuning for the Atmosphere Package as a whole with JSON Configurations
  • Approximate depth integrals for Rayleigh Mie scattering with Pre-Packaged LUTs for algorithmic speedup
  • Implement Volumetric Cloud Features
  • Implement Ozone Extinction

Table of Measurements

phenomena description units underlying units
Flux Radiant Flux Watts kg m^2 s^-3
Wavelength Electromagnetic Wavelength Meters m
Astronomical Units Radii Meters m

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL