Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- let renderUnicorn toScreen =
- let basehorse = mkPLY "../ply/horse.ply" true
- let basepenis = mkPLY "../ply/penis.ply" true
- let t = mergeTransformations
- [rotateY (-Math.PI / 4.0);
- scale 20.0 20.0 20.0;
- translate 0.0 6.0 0.0] in
- let t2 = mergeTransformations
- [rotateY (-Math.PI / 4.0);
- rotateX (-Math.PI / 2.0)
- scale 0.015 0.015 0.015;
- translate 3.5 10.0 6.2] in
- let white = fromColor Color.White
- let horse = mkShape basehorse (mkMatTexture (mkMaterial white 0.0))
- let penis = mkShape basepenis (mkMatTexture (mkMaterial white 0.0))
- let affinehorse = transform horse t in
- let affinepenis = transform penis t2 in
- let t' = scale 0.5 0.5 0.5
- let l1 = mkLight (mkPoint 6.0 2.0 6.0) white 0.5
- let l2 = mkLight (mkPoint -6.0 2.0 6.0) (fromColor Color.Red) 0.5
- let l3 = mkLight (mkPoint -8.5 40.0 4.0) white 1.0
- let p = transform (mkPlane (mkMatTexture (mkMaterial (fromColor Color.Green) 0.5)))
- (rotateX (System.Math.PI/2.0))
- let c = mkCamera (mkPoint 4.0 8.0 25.0) (mkPoint 0.0 0.0 -5.0) (mkVector 0.0 1.0 0.0) 4.0 4.0 4.0 1000 1000
- let ambientLight = mkAmbientLight (fromColor Color.Green) 0.1
- let scene = mkScene [p; affinehorse; affinepenis] [l1; l2; l3] ambientLight c 2
- Util.render' scene (folder, "horse.png") toScreen
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement