Huis Persoonlijke financiën 3 Stappen naar het bouwen van een 3D Java World - dummies

3 Stappen naar het bouwen van een 3D Java World - dummies

Inhoudsopgave:

Video: Minecraft: How To Build A Large Modern House Tutorial (#19) 2024

Video: Minecraft: How To Build A Large Modern House Tutorial (#19) 2024
Anonim

In een paar korte stappen kunt u beginnen met het maken van een relatief eenvoudig 3D-programma in JavaFX dat de driedimensionale wereld weergeeft (een voorbeeld wordt hieronder getoond). Zoals u kunt zien, omvat deze 3D-ruimte vier vormen: een bol, een kubus, een cilinder en een piramide. Deze korte lijst laat zien hoe je aan de slag kunt met een cilinder.

Trek je Thinking Cap aan, want dit voorbeeld is soms behoorlijk technisch en veel van de concepten met betrekking tot het bouwen van 3D-werelden kunnen verwarrend zijn, vooral als dit je eerste ervaring met 3D-programmering is.

Een voorbeeld van een 3D-programma in JavaFX.

Stap één: voeg een cilinder toe

In deze stap voegt u een standaard 3D-object toe aan uw wereld. JavaFX biedt drie basisvormen die u kunt toevoegen: cilinders, dozen en bollen. Begin met het toevoegen van een cilinder:

Cilindercilinder = nieuwe cilinder (100, 50); wortel. getChildren (). voeg (cilinder);

De constructeur van de cilinderklasse accepteert twee argumenten: de straal van de cilinder en de hoogte. Dit voorbeeld creëert een cilinder die ruwweg de vorm heeft van een hockeypuck, vier keer zo breed als hij groot is; vervolgens wordt de cilinder toegevoegd aan het hoofdknooppunt van de scène.

Op dit moment bestaat de cilinder in de wereld, maar is deze niet zichtbaar. Op basis van wat u weet van 2D-vormen, kunt u in de verleiding komen om het zichtbaar te maken door een vulkleur (setFill) of een lijnkleur (setStroke) toe te voegen. Maar dat is niet hoe 3D-objecten werken. In de volgende stap ontdek je hoe je een materiaal op het oppervlak van de cilinder aanbrengt zodat het zichtbaar is in de scène.

Stap twee: maak een materiaal

Het renderen van de vlakken van een 3D-object is veel ingewikkelder dan het renderen van platte, tweedimensionale objecten. Voor een 2D-object past u een Paint-object toe via de methode setFill. De verf kan een eenvoudige kleur, een verloopkleur of een afbeelding zijn.

Voor 3D-objecten past u geen verf toe. In plaats daarvan past u een speciaal object toe dat een Phong-materiaal wordt genoemd, vertegenwoordigd door de klasse PhongMaterial. Een Phong-materiaal (genoemd naar Bui Tuong Phong, een pionierende computergrafiekdeskundige in de jaren 1970) biedt de middelen waarmee de gezichten van een 3D-object realistisch worden weergegeven.

De volgende code maakt een eenvoudig Phong-materiaal op basis van twee tinten blauw en past vervolgens het materiaal op de cilinder toe:

PhongMaterial blueStuff = new PhongMaterial (); bluestuff. setDiffuseColor (kleur LIGHTBLUE); bluestuff. setSpecularColor (kleur BLUE); cilinder. setMaterial (bluestuff);

Nadat het Phong-materiaal op de cilinder is aangebracht, is de cilinder zichtbaar in de scène, zoals weergegeven.

De 3D-cilinder met een Phong-materiaal.

Stap drie: Vertaal de cilinder

Je hebt ongetwijfeld gemerkt dat de cilinder er niet erg driedimensionaal uitziet. Dat is omdat je er edge-on naar kijkt: de camera wijst recht op de kruising van de x- en y-assen, en de cilinder is precies op die plek gericht.

Om enig perspectief te krijgen op de cilinder, kunt u deze verplaatsen naar een andere locatie in de 3D-ruimte door de x-, y- en z-coördinaten te vertalen. Bijvoorbeeld:

cilinder. setTranslateX (-200); cilinder. setTranslateY (200); cilinder. setTranslateZ (200);

Hier wordt de cilinder 200 eenheden naar links verplaatst, 200 eenheden naar beneden en 200 eenheden weg van de camera. Het resulterende beeld lijkt meer op een cilinder, zoals je hier kunt zien.

De vertaalde 3D-cilinder.

In deze afbeelding lijkt het alsof de cilinder naar voren is gedraaid, zodat u een beetje van het bovenoppervlak kunt zien. Dit is echter niet het geval. Wat er feitelijk is gebeurd, is dat je niet langer naar de cilinder kijkt.

In plaats daarvan, omdat de cilinder zich onder de camera bevindt, kijkt u erop neer. Zo kun je een beetje van de bovenkant zien. Je kijkt er ook vanaf de zijkant naar, wat verklaart waarom het een beetje gekanteld lijkt.

3 Stappen naar het bouwen van een 3D Java World - dummies

Bewerkers keuze

Hoe u Flash-video maakt en codeert - dummies

Hoe u Flash-video maakt en codeert - dummies

Als de pagina's die u maakt, zijn gewonnen ' t kan worden bekeken op mobiele apparaten (zoals een iPad of een smartphone), kunt u webpagina's maken met prachtige Flash-video. Adobe Flash Professional CS6 heeft een eigen ingebouwde video-encoder. Full-motionvideo in Flash is iets heel moois. U past de video aan voor het bekijken door de doelgroep ...

Hoe een aanpasbare interface te maken in CSS3 - dummies

Hoe een aanpasbare interface te maken in CSS3 - dummies

De grote variëteit en soorten schermen gebruikt om informatie weer te geven, maakt het nodig dat uw CSS3-commando's de gebruiker toestaan ​​om het formaat van de elementen naar wens aan te passen. In de meeste gevallen kunt u de gebruiker eenvoudig toestaan ​​om het element op elke gewenste grootte te maken. Er kunnen zich echter situaties voordoen waarin u de grootte van de grootte moet controleren ...

Hoe u een eenvoudige tabel op uw webpagina maakt - dummies

Hoe u een eenvoudige tabel op uw webpagina maakt - dummies

Tabellen laten u organiseer informatie op uw webpagina en geef het een georganiseerde uitstraling die uw bezoekers nuttig zullen vinden. Bij gebruik zoals bedoeld, hebben tabellen rijen en kolommen. Voor elke spot waar een rij en kolom elkaar kruisen, hebt u een tabelcel. Elke cel kan zijn eigen opmaak hebben: de gegevens erin ...

Bewerkers keuze

Hoe Postproduction Shareninging Filters werken - dummies

Hoe Postproduction Shareninging Filters werken - dummies

Verscherpingsfilters werken in postproductie door de randen (of aangrenzende gebieden met tonaal contrast) te benadrukken aan elkaar) in een afbeelding. Ze creëren een fijne highlight aan de donkere kant van de rand en een piepklein lowlight aan de lichtere kant van de rand. Dit toegevoegde contrast zorgt ervoor dat de randen er scherper uitzien vanaf een ...

HDR Work-Flow voor foto's met één belichting - dummies

HDR Work-Flow voor foto's met één belichting - dummies

In grote lijnen, enkele belichting hoog dynamisch bereik volgt dezelfde workflow als HDR-fotografie tussen haakjes. Er kunnen kleine verschillen zijn, dus hier is een overzicht van de werkstroom: configureer uw camera voor single-shot HDR. Het enige dat u zoekt, is de beste foto die u kunt maken. Besteed aandacht aan de lichtomstandigheden, het onderwerp, beweging en ...

Geavanceerde compacte en superzoomcamera's voor HDR-fotografie - dummies

Geavanceerde compacte en superzoomcamera's voor HDR-fotografie - dummies

Stap omhoog van compacte digitale camera's binnen het budgetbereik, vindt u duurdere compacte digitale camera's voor HDR-fotografie, ook wel high-end compacts, superzoomlenzen en dSLR-look-alikes genoemd. Er zijn zoveel vaak overlappende categorieën dat het je hoofd laat draaien. De twee dingen die deze reeks camera's gemeen hebben, zijn hun ...

Bewerkers keuze

In te schakelen Class Tracking in QuickBooks 2013 - dummies

In te schakelen Class Tracking in QuickBooks 2013 - dummies

Om activity-based costing te gebruiken (ABC ) in QuickBooks 2013 moet u de QuickBooks Class Tracking-functie inschakelen. Met Class Tracking kunt u inkomsten- en onkostentransacties categoriseren als niet alleen vallen in inkomsten- en uitgavenrekeningen, maar ook als vallen in bepaalde klassen. Volg deze stappen om Class Tracking in QuickBooks in te schakelen: Kies Bewerken → Voorkeuren ...

Gebruikt om een ​​exemplaar van een QuickBooks-gegevensbestand te gebruiken - dummies

Gebruikt om een ​​exemplaar van een QuickBooks-gegevensbestand te gebruiken - dummies

Ongeacht of de client verzendt handmatig een accountantskopie van een QuickBooks-gegevensbestand, e-mails een accountantsexemplaar, of verzendt een accountantskopie via de Intuit-bestandsoverdrachtservice, u gebruikt de kopie van de accountant door Bestand → Verzend bedrijfsdossier → Accountantskopie → Open & converteer overzetten te kiezen Bestand commando. Wanneer u deze opdracht kiest, geeft QuickBooks een ...

Hoe Audit Trails te gebruiken in QuickBooks - dummies

Hoe Audit Trails te gebruiken in QuickBooks - dummies

Als u besluit om meerdere gebruikers toegang te geven tot de QuickBooks-gegevens bestand, zult u de QuickBooks Audit Trail-functie waarderen, die bijhoudt wie welke wijzigingen aan het QuickBooks-gegevensbestand aanbrengt. U kunt transacties niet verwijderen uit de lijst of geschiedenis van de audittrail, behalve door gegevens te archiveren en te condenseren. Audit trail inschakelen ...