Difference between revisions of "User:TdG"
m |
m |
||
| Line 155: | Line 155: | ||
'''topic''': cloth | '''topic''': cloth | ||
| − | '''title''': <span style="font-variant:small-caps">Crushed Velvet</span> [[Image:BH_CrushedVelvet.jpg|100px|thumb|Bob Hughes' | + | '''title''': <span style="font-variant:small-caps">Crushed Velvet</span> [[Image:BH_CrushedVelvet.jpg|100px|thumb|Bob Hughes' Crushed Velvet|alt=|border|left]] |
'''year''': 2000 | '''year''': 2000 | ||
Latest revision as of 12:46, 16 April 2026
INTRODUCTION
This is a haphazard collection of stuff assembled over the last 30 years and written by a large number of POV-Ray users.
I am not the original writer/owner of the following files, only the collector. For all files the usual copyright terms of POV-Ray apply:
The files are licensed under the terms of the CC-LGPL.
Use and/or modification of the scenes is free, except for commercial purposes.
Commercial distribution is not allowed without written permission from their mentioned authors.
MORAY-GENERATED FILES AND AXES ORIENTATION
Some of the scene files below were generated by Moray V3.01 For Windows (c) 1991-1998 Lutz + Kretzschmar.
The scene axes orientation of these scene files are right-handed with the z-axis pointing upwards!
If you want to use them in a POV-Ray environment you need to convert them to the standard orientation (left-handed with the y-axis pointing upwards).
You can achieve this by applying the following transformation to each of the elements/objects in the files:
transform {
scale <1, 1, -1>
rotate <90, 0, 0>
}
Usage example:
#include "MyIncludeFile.inc"
object {MyObject
texture {MyTexture}
transform {
scale <1, 1, -1>
rotate <90, 0, 0>
}
}
LIST OF TOPICS
- cloth
- constructions
- glass
- landscape
- nature
- plants
- rocks
- sky
TOPIC: SKY
topic: sky
title: Rainbow
year: 1998
author: Angelo Carlucci
description: A rainbow as seen through a raindrop-spattered window.
link: none available
comment 1: This scene file was originally generated for POV-Ray V3.0 by Moray V3.01 For Windows (c) 1991-1998 Lutz + Kretzschmar. Created for the "IRTC".
comment 2: See above for how to handle those files.
code snippets: To help interpret and use Moray-generated POV-Ray code, the original global_settings and camera codes have also been provided.
global_settings {
adc_bailout 0.003922
ambient_light <1.0,1.0,1.0>
assumed_gamma 1.9
hf_gray_16 off
irid_wavelength <0.247059,0.176471,0.137255>
max_intersections 64
max_trace_level 10
number_of_waves 10
radiosity {
brightness 3.3
count 100
//distance_maximum 0.0
error_bound 0.4
gray_threshold 0.5
low_error_factor 0.8
minimum_reuse 0.015
nearest_count 6
recursion_limit 1
}
}
camera {
location <-4.550, 6.800, 5.000>
direction <0.0, 0.0, 1.2659>
sky <0.0, 0.0, 1.0> // Use right handed-system!
up <0.0, 0.0, 1.0> // Where Z is up
right <1.33333, 0.0, 0.0>
look_at <-2.250, 3.600, 6.800>
// Focal blur settings
focal_point <-2.250, 3.600, 6.800> // Always Lookat
aperture 0.3
blur_samples 100
confidence 0.999
variance 0.0001
}
#declare Rainbow =
texture {
pigment {
wood
color_map {
[ 0.000000 rgbft <1.0, 1.0, 1.0, 0.0, 1.0> ]
[ 0.789894 rgbft <1.0, 1.0, 1.0, 0.0, 1.0> ]
[ 0.805851 rgbft <0.6, 0.0, 1.0, 0.0, 0.95> ]
[ 0.819149 rgbft <0.0, 0.0, 1.0, 0.0, 0.92> ]
[ 0.837766 rgbft <0.0, 1.0, 0.0, 0.0, 0.85> ]
[ 0.861702 rgbft <1.0, 1.0, 0.0, 0.0, 0.85> ]
[ 0.938830 rgbft <1.0, 0.0, 0.0, 0.0, 0.85> ]
[ 1.000000 rgbft <1.0, 1.0, 0.986667, 0.0, 1.0> ]
}
scale 2.0
}
finish {
ambient 0.7
diffuse 0.0
}
}
disc {
<0,0,0>, <0,0,1>, 1.0
texture {Rainbow}
no_shadow
scale 50.0
rotate <-45.0, -90.0, 0.0>
translate <31.1, 3.35, -10.8>
}
next blah blah blah...
TOPIC: CLOTH
topic: cloth
title: Crushed Velvet
year: 2000
author: Bob Hughes
description: An attempt at making a crushed velvet texture.
comment: Updated to POV-Ray 3.8, added warp turbulence, and changed to macro access by TdG (2023).
code: The following code should be saved in an include file, like crushedvelvet.inc
#macro Velvet(Vb,Vt,Vs,Vc)
// BEGIN VELVET CHOICES
// Color Brightness [ > 0 to 2 ? ]
#ifndef (Vb) #declare Vb = 1; #end
// Velvet Thickness [ 0 to 3 ? ]
#ifndef (Vt) #declare Vt = 1.5; #end
// Velvet Size [ 0 to 6 ? ]
#ifndef (Vs) #declare Vs = 1; #end
// Color Choice [ 1= black, 2= red, 3= green, 4= blue ]
#ifndef (Vc) #declare Vc = 2; #end
// END VELVET CHOICES
// Color Choice
#switch (Vc)
#case (1)
// Black
#declare Cv1 = <.05,.05,.05>;
#declare Cv2 = <.1,.1,.1>;
#declare Cv3 = <.075,.075,.075>;
#declare Cv4 = <.1,.1,.1>;
#declare Cv5 = <.05,.05,.05>;
#declare Cv6 = <.1,.1,.1>;
#declare Cfv1 = rgbf<.05,.05,.05,.4>;
#declare Cfv2 = rgbf<.1,.1,.1,.5>;
#declare Cfv1a = rgbf<.05,.05,.05,.1>;
#declare Cfv1b = rgbf<.1,.1,.1,.05>;
#declare Cfv2a = rgbf<.05,.05,.05,.1>;
#declare Cfv2b = rgbf<.1,.1,.1,.05>;
#break
#case (2)
// Red
#declare Cv1 = <.7,.1,.1>;
#declare Cv2 = <.75,.15,.2>;
#declare Cv3 = <.65,.15,.15>;
#declare Cv4 = <.65,.15,.25>;
#declare Cv5 = <.6,.1,.1>;
#declare Cv6 = <.65,.15,.15>;
#declare Cfv1 = rgbf<.5,.1,.1,.4>;
#declare Cfv2 = rgbf<.55,.1,.15,.5>;
#declare Cfv1a = rgbf<.6,.1,.1,.1>;
#declare Cfv1b = rgbf<.65,.15,.15,.05>;
#declare Cfv2a = rgbf<.6,.1,.1,.1>;
#declare Cfv2b = rgbf<.75,.15,.25,.05>;
#break
#case (3)
// Green
#declare Cv1 = <.1,.5,.2>;
#declare Cv2 = <.1,.65,.25>;
#declare Cv3 = <.1,.5,.3>;
#declare Cv4 = <.2,.6,.2>;
#declare Cv5 = <.1,.7,.1>;
#declare Cv6 = <.15,.65,.25>;
#declare Cfv1 = rgbf<.2,.5,.2,.4>;
#declare Cfv2 = rgbf<.3,.55,.25,.5>;
#declare Cfv1a = rgbf<.2,.6,.3,.1>;
#declare Cfv1b = rgbf<.2,.7,.3,.05>;
#declare Cfv2a = rgbf<.1,.6,.15,.1>;
#declare Cfv2b = rgbf<.15,.65,.2,.05>;
#break
#case (4)
// Blue
#declare Cv1 = <.1,.3,.7>;
#declare Cv2 = <.2,.4,.65>;
#declare Cv3 = <.12,.24,.58>;
#declare Cv4 = <.3,.5,.6>;
#declare Cv5 = <.2,.4,.7>;
#declare Cv6 = <.25,.35,.65>;
#declare Cfv1 = rgbf<.22,.34,.77,.4>;
#declare Cfv2 = rgbf<.35,.45,.75,.5>;
#declare Cfv1a = rgbf<.12,.24,.6,.1>;
#declare Cfv1b = rgbf<.2,.3,.7,.05>;
#declare Cfv2a = rgbf<.12,.24,.6,.1>;
#declare Cfv2b = rgbf<.2,.3,.7,.05>;
#break
#end
// BEGIN VELVET TEXTURE DEFINITION
#declare T1 =
texture {
pigment {
wrinkles frequency .666
color_map {
[0 color rgb Cv1*Vb]
[1 color rgb Cv2*Vb]
}
sine_wave
}
normal {
crackle 10
normal_map {
[0.1 wrinkles 8 triangle_wave scale <3,.5,1>*10 rotate <15,30,5>]
[0.3 crackle 8 scallop_wave scale <3,.5,1>*10 rotate <15,30,5>]
[0.9 leopard 8 triangle_wave scale <3,.5,1>*10 rotate <15,30,5>]
}
triangle_wave
scale <3,.5,1>*5
rotate <15,30,5>
}
finish {
diffuse .3
fresnel on
reflection {<.05,.075,.1> fresnel on} crand .013
brilliance -.25*Vt
}
}
#declare T2 =
texture {
pigment {
crackle frequency 2
color_map {
[0 color rgb Cv3*Vb]
[1 color rgb Cv4*Vb]
}
scallop_wave
}
normal {
agate 7.5 agate_turb .6
normal_map {
[0.1 wrinkles 8 triangle_wave scale <3,.5,1>*10 rotate <15,30,5>]
[0.3 crackle 8 scallop_wave scale <3,.5,1>*10 rotate <15,30,5>]
[0.9 leopard 8 triangle_wave scale <3,.5,1>*10 rotate <15,30,5>]
}
scallop_wave
scale <3,.5,1>*10
rotate <15,30,5>
}
finish {
diffuse .35
fresnel on
reflection {<.05,.075,.1> fresnel on} crand .013
brilliance -.3*Vt
}
}
#declare T3 =
texture {
pigment {
granite frequency .5
color_map {
[0 color rgb Cv5*Vb]
[1 color rgb Cv6*Vb]
}
triangle_wave
}
normal {
bozo 5
turbulence .9
normal_map {
[0.1 wrinkles 8 triangle_wave scale <3,.5,1>*10 rotate <15,30,5>]
[0.3 crackle 8 scallop_wave scale <3,.5,1>*10 rotate <15,30,5>]
[0.9 leopard 8 triangle_wave scale <3,.5,1>*10 rotate <15,30,5>]
}
sine_wave
scale <3,.5,1>*15
rotate <15,30,5>
}
finish {
diffuse .4
fresnel on
reflection {<.05,.075,.1> fresnel on} crand .013
brilliance -.35*Vt
}
}
#declare Tf =
texture {
pigment {
wrinkles frequency 2
color_map {
[0 color Cfv1*Vb]
[1 color Cfv2*Vb]
}
}
finish {
diffuse 1.25
fresnel on
reflection {<.05,.075,.1> fresnel on} crand .013
brilliance -.75*Vt
metallic .6
}
}
texture {
pigment {
wrinkles frequency 2
color_map {
[0 color Cfv1*Vb]
[1 color Cfv2*Vb]
}
}
finish {
diffuse .05
fresnel on
reflection {<.05,.075,.1>*.25 fresnel on} crand .013
brilliance .125*Vt
metallic .3
}
}
#declare P1 =
pigment {
granite
color_map {
[0 color Cfv1a*Vb]
[1 color Cfv1b*Vb]
}
}
#declare P2 =
pigment {
granite
color_map {
[0 color Cfv2a*Vb]
[1 color Cfv2b*Vb]
}
}
#declare Tp1 =
texture {
pigment {
gradient x turbulence .09 frequency .333
pigment_map {
[0 P1]
[1 P2]
}
scallop_wave
}
finish {
diffuse .5
fresnel on
reflection {<.05,.075,.1> fresnel on} crand .016
brilliance .125*Vt
}
}
#declare Tp2 =
texture {
pigment {
gradient y turbulence .09 frequency .333
pigment_map {
[0 P1]
[1 P2]
}
scallop_wave
}
finish {
diffuse .5
fresnel on
reflection {<.05,.075,.1> fresnel on} crand .016
brilliance .125*Vt
}
}
#declare Tp3 =
texture {
pigment {
gradient z turbulence .09 frequency .333
pigment_map {
[0 P1]
[1 P2]
}
scallop_wave
}
finish {
diffuse .5
fresnel on
reflection {<.05,.075,.1> fresnel on} crand .016
brilliance .125*Vt
}
}
// FINAL VELVET TEXTURE
#declare CVelvet =
texture {
average
texture_map {
[1.000 T1]
[0.750 T2]
[0.875 T3]
[0.705 Tf]
[0.900 Tp1]
[0.900 Tp2]
[0.900 Tp3]
}
warp {turbulence 2.5} //added by TdG (2023)
scale .05*Vs
}
#end //of Velvet macro
blah blah blah blah blah.......