Geschreven door studenten die geslaagd zijn Direct beschikbaar na je betaling Online lezen of als PDF Verkeerd document? Gratis ruilen 4,6 TrustPilot
logo-home
Overig

COS Assignment 2 solution

Beoordeling
3,0
(2)
Verkocht
9
Pagina's
9
Geüpload op
29-07-2023
Geschreven in
2022/2023

COS Assignment 2 solution: Continuation of Assignment one, Check my uploaded Assignment one to continue with this assignment 2 OR just use assignment 2 as it is You are required to make the farm created in the previous project (assignment 1) more realistic by adding lighting and material properties. You are required to create two different scenes. The first is a day scene in which you define the sun as a directional light whose colour is white in all its components and that has constant attenuation. The second is a night scene for which you have to add three garden lights in open spaces. Define each “garden” light as a positional light. The night scene should also include a moon and some stars. Do not use lights for any of these. Manipulate the emissivity of the respective materials to obtain the desired lighting effect. Your program should retain all the functionality of the previous project. Add a keyboard callback that will allow the user to switch between scenes. Use D to switch to day and N to switch to night. This should work whether "Caps Lock" is enabled or not. You are required to apply texture mapping to the entire barn.

Meer zien Lees minder
Instelling
Vak

Voorbeeld van de inhoud

COS3712 2023 ASSIGNMENT 2
(with the source code you need & link to the zipped folder)
Crystal Indigo!
Crystal Indigo!
Providing all solutions you need anytime
+27 76 626 8187




***Copy and run the code, open with the web browser and see the results***
*** There is a link to the source code at the end of this discussion***
if there is a program that is not running, please contact


Note: do not submit as pdf and change the code where necessary

,//Output when run

,<!-- index.html -->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Simple Village</title>
<style>
body { margin: 0; }
canvas { display: block; }
#controls {
position: absolute;
top: 10px;
left: 10px;
z-index: 1;
}
</style>
</head>
<body>
<div id="controls">
<button id="toggleRotation">Toggle Rotation</button>
<button id="toggleDirection">Toggle Rotation Direction</button>
<input type="range" id="rotationSpeed" min="0.1" max="2" step="0.1"
value="1">
<button id="zoomIn">Zoom In</button>
<button id="zoomOut">Zoom Out</button>
</div>
<!-- the JavaScripts -->
<script type="text/javascript" src="./scripts/three.min.js"></script>
<script type="text/javascript" src="./scripts/three.js"></script>
<script type="text/javascript" src="./scripts/texture.data.js"></script>
<script type="text/javascript" src="./scripts/script.js"></script>
</body>
</html>




/* style.css */

body {
margin: 0;
overflow: hidden;
}
canvas {
display: block;
}

, // script.js
window.addEventListener('DOMContentLoaded', init);

let scene, camera, renderer;
let rotationToggle = false;
let rotationDirection = 1;
let rotationSpeed = 1;
let zoomLevel = 1;
const gardenLightColor = 0xffffee; // Color for garden lights (adjust as
needed)
const gardenLightIntensity = 15; // Intensity of the garden lights (adjust
as needed)

function init() {
scene = new THREE.Scene();

camera = new THREE.PerspectiveCamera(75, window.innerWidth /
window.innerHeight, 0.1, 1000);
// Set the initial position of the camera.
camera.position.set(0, 0, 400);
camera.lookAt(scene.position);

renderer = new THREE.WebGLRenderer({ antialias: true });
renderer.setSize(window.innerWidth, window.innerHeight);
renderer.setClearColor(0x87ceeb);
document.body.appendChild(renderer.domElement);

// Enable shadows.
renderer.shadowMap.enabled = true;
renderer.shadowMap.type = THREE.PCFSoftShadowMap;

createVillage();

animate();
}




function createVillage() {
var sun = new THREE.DirectionalLight(0xffffff, 1);
sun.position.set(50, -50, 50);
sun.castShadow = true;
sun.shadow.mapSize.width = 1024;
sun.shadow.mapSize.height = 1024;
sun.shadow.radius = 20;
scene.add(sun);

// Define three garden lights as positional lights for the night scene
// var gardenLight1 = new THREE.PointLight(0xffb400, 15);
// gardenLight1.position.set(0, -0.5, 0);
// gardenLight1.castShadow = true;

Geschreven voor

Instelling
Vak

Documentinformatie

Geüpload op
29 juli 2023
Aantal pagina's
9
Geschreven in
2022/2023
Type
OVERIG
Persoon
Onbekend

Onderwerpen

€7,73
Krijg toegang tot het volledige document:

Verkeerd document? Gratis ruilen Binnen 14 dagen na aankoop en voor het downloaden kun je een ander document kiezen. Je kunt het bedrag gewoon opnieuw besteden.
Geschreven door studenten die geslaagd zijn
Direct beschikbaar na je betaling
Online lezen of als PDF

Beoordelingen van geverifieerde kopers

Alle 2 reviews worden weergegeven
2 jaar geleden

2 jaar geleden

3,0

2 beoordelingen

5
1
4
0
3
0
2
0
1
1
Betrouwbare reviews op Stuvia

Alle beoordelingen zijn geschreven door echte Stuvia-gebruikers na geverifieerde aankopen.

Maak kennis met de verkoper

Seller avatar
De reputatie van een verkoper is gebaseerd op het aantal documenten dat iemand tegen betaling verkocht heeft en de beoordelingen die voor die items ontvangen zijn. Er zijn drie niveau’s te onderscheiden: brons, zilver en goud. Hoe beter de reputatie, hoe meer de kwaliteit van zijn of haar werk te vertrouwen is.
CrystalIndigo University of South Africa (Unisa)
Volgen Je moet ingelogd zijn om studenten of vakken te kunnen volgen
Verkocht
486
Lid sinds
5 jaar
Aantal volgers
226
Documenten
73
Laatst verkocht
5 maanden geleden
CrystalIndigo Solutions

providing all solutions to all computer science modules

4,1

51 beoordelingen

5
27
4
13
3
6
2
1
1
4

Populaire documenten

Recent door jou bekeken

Waarom studenten kiezen voor Stuvia

Gemaakt door medestudenten, geverifieerd door reviews

Kwaliteit die je kunt vertrouwen: geschreven door studenten die slaagden en beoordeeld door anderen die dit document gebruikten.

Niet tevreden? Kies een ander document

Geen zorgen! Je kunt voor hetzelfde geld direct een ander document kiezen dat beter past bij wat je zoekt.

Betaal zoals je wilt, start meteen met leren

Geen abonnement, geen verplichtingen. Betaal zoals je gewend bent via iDeal of creditcard en download je PDF-document meteen.

Student with book image

“Gekocht, gedownload en geslaagd. Zo makkelijk kan het dus zijn.”

Alisha Student

Veelgestelde vragen