Distant Galaxies

Started by WAS, April 19, 2021, 06:21:30 PM

Previous topic - Next topic

WAS

Kinda just a test to see what I can do with TG.

Procedural stars (of course) and now procedural distant galaxies/clusters

These are scaled down from 6k due to JPEG compression issues and filesize (6k were turning out 4mb-5mb with bad compression).

DocCharly65

Like! Look like the  - how did they call the Hubble photo? Deep field?

archonforest

Dell T5500 with Dual Hexa Xeon CPU 3Ghz, 32Gb ram, GTX 1080
Amiga 1200 8Mb ram, 8Gb ssd

Stormlord

Very good idea and it looks realistic in combination with the starfield.
A Jordan Deep Field as I would say...

STORMLORD

WAS

Here is the starfield background, and distant galaxies merged into one function, and rendered with TG filters instead of photoshop.


WAS

#6
The composite renders go much faster then merging together. Oh well. Can still easily, and probably better, to render out a HDRI for anything animated.

PS Here is a simple idea for how the function works, though what I have now uses a PF for bands instead of a built in perlin. But i think the build in perlin looks better just not as customizable.

<terragen_clip>
 <surface_layer
name = "Surface layer 01"
gui_use_node_pos = "1"
gui_node_pos = "-3000 1080 0"
gui_group = ""
enable = "1"
input_node = ""
gui_use_preview_patch_size = "1"
gui_preview_patch_size = "8000 8000"
apply_colour = "1"
diffuse_colour = "0.5 0.5 0.5"
colour_function = ""
enable_test_colour = "0"
test_colour = "1 0 1"
luminous = "0"
luminosity_multiplier = "1"
luminosity_tint = "1 1 1"
luminosity_function = ""
displacement_direction = "1"
displacement_multiplier = "1"
displacement_function = ""
displacement_offset = "0"
smoothing_effect = "0"
smoothing_amount = "1"
child_layers = "Transform input shader 01"
coverage = "1"
fractal_breakup = "0"
breakup_shader = ""
fractal_contrast = "0.5"
invert_breakup = "0"
only_breakup_colour = "1"
blend_by_shader = "1"
blending_shader = "Complement scalar 01"
invert_blendshader = "0"
blend_as_coverage = "0"
limit_maximum_altitude = "0"
maximum_altitude = "1000"
max_alt_fuzzy_zone = "200"
limit_minimum_altitude = "0"
minimum_altitude = "200"
min_alt_fuzzy_zone = "200"
altitude_key = "1"
use_Y_for_altitude = "0"
limit_maximum_slope = "0"
maximum_slope_angle = "60"
max_slope_fuzzy_zone = "20"
limit_minimum_slope = "0"
minimum_slope_angle = "30"
min_slope_fuzzy_zone = "10"
slope_key = "0"
use_Y_for_slope = "0"
intersect_underlying = "0"
intersection_mode = "0"
intersection_zone = "2"
smoothing_scale = "0"
intersection_shift = "2"
min_intersection_shift = "-2"
fuzzy_zone_softness = "1"
smoother_fuzzy_zones_for_shading = "0"
smoother_fuzzy_zones_for_displacement = "0"
>
</surface_layer>
<transform_input_shader
name = "Transform input shader 02_1"
gui_use_node_pos = "1"
gui_node_pos = "-2880 360 0"
gui_group = ""
enable = "1"
input_node = "Smooth step scalar 02"
gui_use_preview_patch_size = "1"
gui_preview_patch_size = "8000 8000"
use_world_space = "0"
use_undisplaced_space = "0"
translate = "1"
translate_by = "0 0 100"
rotate = "0"
rotate_by = "0 0 0"
scale = "1"
scale_by = "3.5 1 1"
>
</transform_input_shader>
<constant_scalar
name = "Core Scalar Floor"
gui_use_node_pos = "1"
gui_node_pos = "-2480 1420 0"
gui_group = ""
enable = "1"
input_node = ""
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
scalar = "0.55"
>
</constant_scalar>
<constant_scalar
name = "Core Intensity"
gui_use_node_pos = "1"
gui_node_pos = "-2480 1240 0"
gui_group = ""
enable = "1"
input_node = ""
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
scalar = "10"
>
</constant_scalar>
<constant_scalar
name = "Bands Intensity"
gui_use_node_pos = "1"
gui_node_pos = "-2480 1300 0"
gui_group = ""
enable = "1"
input_node = ""
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
scalar = "1.5"
>
</constant_scalar>
<colour_adjust_shader
name = "Colour adjust shader 01"
gui_use_node_pos = "1"
gui_node_pos = "-3000 1000 0"
gui_group = ""
enable = "1"
input_node = "Surface layer 01"
gui_use_preview_patch_size = "1"
gui_preview_patch_size = "4000 4000"
black_point = "-0.25 -0.25 -0.25"
black_point_adjust = "-0.25"
white_point = "1 1 1"
white_point_adjust = "1"
gamma = "1 1 1"
gamma_adjust = "1"
clamp_below_black = "1"
clamp_above_white = "1"
>
</colour_adjust_shader>
<add_scalar
name = "Add scalar 02"
gui_use_node_pos = "1"
gui_node_pos = "-2960 240 0"
gui_group = ""
enable = "1"
input_node = "Multiply scalar 02"
gui_use_preview_patch_size = "1"
gui_preview_patch_size = "8000 8000"
input_2 = "Multiply scalar 01"
>
</add_scalar>
<transform_input_shader
name = "Transform input shader 01"
gui_use_node_pos = "1"
gui_node_pos = "-2820 1260 0"
gui_group = ""
enable = "1"
input_node = "Perlin 3D scalar 01"
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
use_world_space = "0"
use_undisplaced_space = "0"
translate = "0"
translate_by = "0 0 0"
rotate = "0"
rotate_by = "0 0 0"
scale = "1"
scale_by = "0.25 0.25 0.25"
>
</transform_input_shader>
<multiply_scalar
name = "Multiply scalar 02"
gui_use_node_pos = "1"
gui_node_pos = "-2980 520 0"
gui_group = ""
enable = "1"
input_node = "Transform input shader 02"
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
input_2 = "Bands Intensity"
>
</multiply_scalar>
<multiply_scalar
name = "Multiply scalar 01"
gui_use_node_pos = "1"
gui_node_pos = "-2880 300 0"
gui_group = ""
enable = "1"
input_node = "Transform input shader 02_1"
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
input_2 = "Core Intensity"
>
</multiply_scalar>
<displacement_shader
name = "Displacement shader 01"
gui_use_node_pos = "1"
gui_node_pos = "-2920 920 0"
gui_group = ""
enable = "1"
input_node = ""
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
function = "Complement scalar 01"
displacement_direction = "1"
displacement_multiplier = "10000"
>
</displacement_shader>
<warp_input_shader
name = "Warp input shader 01"
gui_use_node_pos = "1"
gui_node_pos = "-3000 860 0"
gui_group = ""
enable = "1"
input_node = "Colour adjust shader 01"
gui_use_preview_patch_size = "1"
gui_preview_patch_size = "4000 4000"
warper = "Displacement shader 01"
>
</warp_input_shader>
<smooth_step_scalar
name = "Smooth step scalar 01"
gui_use_node_pos = "1"
gui_node_pos = "-2860 760 0"
gui_group = ""
enable = "1"
input_node = "Complement scalar 01"
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
step_start = "Bands Scalar Floor"
step_end = "Bands Scalar Ceiling"
>
</smooth_step_scalar>
<surface_layer
name = "Surface layer 02"
gui_use_node_pos = "1"
gui_node_pos = "-2980 680 0"
gui_group = ""
enable = "1"
input_node = ""
gui_use_preview_patch_size = "1"
gui_preview_patch_size = "4000 4000"
apply_colour = "0"
diffuse_colour = "0.5 0.5 0.5"
colour_function = ""
enable_test_colour = "0"
test_colour = "1 0 1"
luminous = "0"
luminosity_multiplier = "1"
luminosity_tint = "1 1 1"
luminosity_function = ""
displacement_direction = "1"
displacement_multiplier = "1"
displacement_function = ""
displacement_offset = "0"
smoothing_effect = "0"
smoothing_amount = "1"
child_layers = "Warp input shader 01"
coverage = "1"
fractal_breakup = "0"
breakup_shader = ""
fractal_contrast = "0.5"
invert_breakup = "0"
only_breakup_colour = "1"
blend_by_shader = "1"
blending_shader = "Smooth step scalar 01"
invert_blendshader = "0"
blend_as_coverage = "0"
limit_maximum_altitude = "0"
maximum_altitude = "1000"
max_alt_fuzzy_zone = "200"
limit_minimum_altitude = "0"
minimum_altitude = "200"
min_alt_fuzzy_zone = "200"
altitude_key = "1"
use_Y_for_altitude = "0"
limit_maximum_slope = "0"
maximum_slope_angle = "60"
max_slope_fuzzy_zone = "20"
limit_minimum_slope = "0"
minimum_slope_angle = "30"
min_slope_fuzzy_zone = "10"
slope_key = "0"
use_Y_for_slope = "0"
intersect_underlying = "0"
intersection_mode = "0"
intersection_zone = "2"
smoothing_scale = "0"
intersection_shift = "2"
min_intersection_shift = "-2"
fuzzy_zone_softness = "1"
smoother_fuzzy_zones_for_shading = "0"
smoother_fuzzy_zones_for_displacement = "0"
>
</surface_layer>
<transform_input_shader
name = "Transform input shader 02"
gui_use_node_pos = "1"
gui_node_pos = "-2980 600 0"
gui_group = ""
enable = "1"
input_node = "Surface layer 02"
gui_use_preview_patch_size = "1"
gui_preview_patch_size = "8000 8000"
use_world_space = "0"
use_undisplaced_space = "0"
translate = "0"
translate_by = "0 0 0"
rotate = "0"
rotate_by = "0 0 0"
scale = "1"
scale_by = "3.5 1 1"
>
</transform_input_shader>
<smooth_step_scalar
name = "Smooth step scalar 02"
gui_use_node_pos = "1"
gui_node_pos = "-2880 440 0"
gui_group = ""
enable = "1"
input_node = "Complement scalar 01"
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
step_start = "Core Scalar Floor"
step_end = "Core Scalar Ceiling"
>
</smooth_step_scalar>
<constant_scalar
name = "Core Scalar Ceiling"
gui_use_node_pos = "1"
gui_node_pos = "-2480 1360 0"
gui_group = ""
enable = "1"
input_node = ""
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
scalar = "1.5"
>
</constant_scalar>
<constant_scalar
name = "Bands Scalar Ceiling"
gui_use_node_pos = "1"
gui_node_pos = "-2480 1480 0"
gui_group = ""
enable = "1"
input_node = ""
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
scalar = "0.75"
>
</constant_scalar>
<constant_scalar
name = "Bands Scalar Floor"
gui_use_node_pos = "1"
gui_node_pos = "-2480 1540 0"
gui_group = ""
enable = "1"
input_node = ""
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
scalar = "0.2"
>
</constant_scalar>
<constant_scalar
name = "Seed"
gui_use_node_pos = "1"
gui_node_pos = "-2480 1600 0"
gui_group = ""
enable = "1"
input_node = ""
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
scalar = "1451"
>
</constant_scalar>
<constant_scalar
name = "Scale"
gui_use_node_pos = "1"
gui_node_pos = "-2480 1660 0"
gui_group = ""
enable = "1"
input_node = ""
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
scalar = "1200"
>
</constant_scalar>
<perlin_3D_scalar
name = "Perlin 3D scalar 01"
gui_use_node_pos = "1"
gui_node_pos = "-2820 1340 0"
gui_group = ""
enable = "1"
input_node = "Get position in texture 01"
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
scale = "Scale"
seed = "Seed"
>
</perlin_3D_scalar>
<complement_scalar
name = "Complement scalar 01"
gui_use_node_pos = "1"
gui_node_pos = "-3020 1180 0"
gui_group = ""
enable = "1"
input_node = "Add scalar 01"
gui_use_preview_patch_size = "1"
gui_preview_patch_size = "4000 4000"
>
</complement_scalar>
<add_scalar
name = "Add scalar 01"
gui_use_node_pos = "1"
gui_node_pos = "-3020 1260 0"
gui_group = ""
enable = "1"
input_node = "Voronoi 3D A vector 01"
gui_use_preview_patch_size = "1"
gui_preview_patch_size = "4000 4000"
input_2 = "Voronoi 3D A vector 01"
>
</add_scalar>
<voronoi_3D_A_vector
name = "Voronoi 3D A vector 01"
gui_use_node_pos = "1"
gui_node_pos = "-3020 1340 0"
gui_group = ""
enable = "1"
input_node = "Get position in texture 01"
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
scale = "Scale"
seed = "Seed"
>
</voronoi_3D_A_vector>
<get_position_in_texture
name = "Get position in texture 01"
gui_use_node_pos = "1"
gui_node_pos = "-3060 1540 0"
gui_group = ""
enable = "1"
input_node = ""
gui_use_preview_patch_size = "0"
gui_preview_patch_size = "1000 1000"
>
</get_position_in_texture>
</terragen_clip>

pclavett

This is really close to what you can find on the astronomy websites from true life telescopes ! Amazing realism !