Instructables Universe in Three.js (11 / 13 stap)

Stap 11: Three.js: Camera-positionering


Camera bediening is waarschijnlijk het moeilijkste deel van het werken met ThreeJS. Ik raden iedereen niet lastig vallen met deze oefening in frustratie. Kies een van de voorbeeld generieke camera domeincontrollers, het script op uw pagina invoegen, en genieten. Als u hoeft voor de berekening van de aangepaste camera parameters, bent u waarschijnlijk het beste af leren over quaternionen, die heb ik niet.

Gaan de plain-Jane trig route laat je in een wereld van pijn. Hebt u in wezen geen nuttige hulpmiddelen om te debuggen uw math, en zelfs zodra uw math klopt de resultaten verkeerd kunnen kijken wegens dingen zoals de "Euler Order" (welke u moet ingesteld op YXZ als u wilt dat de besturingselementen van de camera te voelen als Pitch, Roll, en Yaw... gewoon set camera.rotation.order = "YXZ";). Rotaties van de camera's zijn in het coördinatensysteem van de camera, dus je moet altijd onthouden om het te geven instructies die manier of gebruik de hacky "doel" en "lookAt" strategie (die ik heb) waardoor er steevast u totaal krenterig oriëntaties... dat is wanneer u begint met het instellen van de camera's "up" vector handmatig te houden boven, en je altijd moet worden op zoek naar dingen zoals gimbal lock (waar je verliest een mate van vrijheid vanwege twee parallelle assen in de camera) en het feit dat tweening de * waarden * van van de camera rotatie vectoren kan nemen u correct van A--> B in de ruimte, maar langs de verkeerde kant van de roterende. U kunt denken het is natuurlijk te draai van 180 graden door uw hoofd opzij draaien, maar de eenvoudigste roterende pad misschien wel degene die rechte overhead in plaats daarvan gaat. Blech!

Ik ga niet om u via de oplossingen naar al deze kwesties, en als je goed kijkt vindt u dat mijn oplossingen nog steeds, op sommige plaatsen, een beetje ruw. In plaats daarvan, ik ga om te plakken op alle camera beweging code samen met weinig merkt hier over welke onderdelen van het hebben. Als u echt in een stuk duiken bent en je meer uitleg wenst, ga je gang en post een reactie zodat ik dat deel uitwerken kan.

Camera Criteria: hoogtepunten

-Het zetten van een geselecteerde ster in het midden van het scherm (zoomAndDollyToPoint)
-Het zetten van een geselecteerde ster in het midden van het scherm met het centrum van het melkwegstelsel in de achtergrond om te voorkomen dat de bladeren van de rand van het heelal (zoomToFitPointsFrom, CAMERA_RELATION. TOWARD_CENTER)
-Verplaatsen van de ene geselecteerde ster naar de andere zonder het wijzigen van de camera hoek (strafeFromPointToPoint)
-Het vinden van het selectiekader gebied voor een groep van sterren, en dan het vinden van een camerapositie zodanig dat die sterren op het scherm (zoomToFitPointsFrom, alle CAMERA_RELATIONs passen zou)
-Zet aangrenzende sterren in hetzelfde cluster in comfortabele scherm posities ten opzichte van een single "geselecteerd" ster in een blogauteur sterrenbeeld (showThreePointsNicely)
-Terug naar een "thuis" positie (reset)
-Het parameterizing van een pad voor de camera zodat het langzaam door de Melkweg op zijn eigen toen niet vliegen kan bijgewoond (wachten 90s zonder te klikken om te zien de animatie start)-- (beginAutomaticTravel en cameraSetupForParameter)

De Code:

 _.each(Galaxy.Composers,function(composer){ composer.render(); }); 

Gerelateerde Artikelen

The Instructables University Game

The Instructables University Game

Ik had niet gepland op het invoeren van de "How to play wedstrijd" want ik niet echt een gameconsole ben. Na het nadenken, kwam ik met The Instructables Universiteit Game. Ik heb geprobeerd om mijn volwassen zoon aan bij de pret hier, maar zijn
Verleden projecten/Pre Instructables...

Verleden projecten/Pre Instructables...

I wish I would have found Instructables two or three years ago. Ik kon een deurklink van een veel meer hebben bijgedragen. Met mijn recente verplaatsen onvermijdelijk dat heb ik besloten om enkele foto's van eerdere projecten in mijn huidige huis ver
Jus te gaan met een gebraden

Jus te gaan met een gebraden

hoewel dit dom eenvoudig is, ik ben voortdurend verbaasd over het aantal mensen die geïntimideerd, zijn wanneer het gaat om het maken van een simpele jus te gaan met een gebraden. Deze jus werkt ruim aardappelen, besprenkeld over het vlees of de volg
Gedetailleerde geweven Duct Tape portefeuilles Instructable

Gedetailleerde geweven Duct Tape portefeuilles Instructable

Ja, ja, het is een ander Duct Tape wallet instructable.Hoe saai, juiste?De reden dat ik dit doe is dat ik proberen zal te doen samenballen van kennis over het bouwen van allerlei soorten Duct Tape portefeuilles en ingaan op veel aspecten zodat u zal
Steven Universe jurk

Steven Universe jurk

Een goede vriend van mij houdt Steven Universe, dus ik haar deze jurk als een gift van de verjaardag maakte. Ik denk dat dit is een echt mooie jurk, en zou een geweldig cosplay of Halloween kostuum!Ik maakte haar ook een volledige set van kat vinger
TestrBot: De $300 Universal testmachine

TestrBot: De $300 Universal testmachine

UPDATE 9-2-15: ik vrijgegeven een batch van testresultaten die aantonen dat mijn beweegredenen voor terwijl "infill"-ontwerp is de beste!* Wat is TestrBot?TestrBot is een $300 Universal Test Machine (UTM) en kan worden gebruikt voor het uitvoere
Steven Universe lumi inkodye ondergoed met crystal gem Garnet

Steven Universe lumi inkodye ondergoed met crystal gem Garnet

Een van de dingen die mijn geld kan niet kopen is prima super held/favoriet karakter ondergoed (of elke merch echt) voor dames. Elke vorm van boksers schijnt beschikbaar te zijn, en soms heb ik geprobeerd kopen sommige "jongens" grootte ondergoe
SUMO :  Slimme /* * Smart Pulse Monitor * Author : Geeve George * Instructables : */ #include const int analo

SUMO&nbsp;:&nbsp;<youtube&nbsp;id="lDKM7UKUL5A"></youtube>&nbsp;Slimme&nbsp;/*&nbsp;*&nbsp;Smart&nbsp;Pulse&nbsp;Monitor&nbsp;*&nbsp;Author&nbsp;:&nbsp;Geeve&nbsp;George&nbsp;*&nbsp;Instructables&nbsp;:&nbsp;*/&nbsp;#include&nbsp;const&nbsp;int&nbsp;analo

src = "HalloIedereen,Ik benGeeveGeorgeeen15jaaroudeMaker/elektronicaHobbyist.IliefdeComputerVisie,AndroïdeOntwikkelingenAlgoritmeDesign.Iamop dit momentin11eRangComputerWetenschapStudentbijWeinigRockIndischeSchool.:)Zoekenmeerovermebij:href = "h
DIY zelf geactiveerd PRIVATE UNIVERSE

DIY zelf geactiveerd PRIVATE UNIVERSE

dit is mijn allereerste ooit Instructables uploaden dus, wees voorzichtig met mij.Ik maakte dit voor een kleine galerie ruimte in een ARI genoemd Constance in Hobart, Tasmanië, Australië, en is speciaal ontworpen om te worden geactiveerd wanneer mens
Knex verstek zagen instructies

Knex verstek zagen instructies

het is teruggekeerd! Ja, na 3 jaar, heb ik eindelijk besloten om te posten van instructies van mijn verstek zaag. Deze zaag is net als de oude is, behalve een paar kleine kleurwijzigingen te geven een meer consistent kleurenschema. Voor degenen onder
Pimp mijn PSP hoofdstuk 1 uw one-stop Instructable voor al uw PSP behoeften!

Pimp mijn PSP hoofdstuk 1 uw one-stop Instructable voor al uw PSP behoeften!

Dit instructable leert u sommige unieke dingen die uw PSP in een Multi-Media beest transformeren zal.Dit instructable zal u tonen hoe te:1. update uw PSP (officiële Firmware, niet Custom Firmware)2. video's toevoegen aan uw PSP (hoofdstuk 2)3. foto's
Met de Switch()-instructie als Sequencing Control

Met de Switch()-instructie als Sequencing Control

In dit Instructable, zal wij gaan over de "switch()"-instructie en het gebruik in de programmering. De instructie switch is een krachtig hulpmiddel voor het organiseren van uw programma, gemakkelijk kunt u complexe stroomdiagrammen doorlopen.In
Overleven in het wild-het meest unieke instructable tot nu toe

Overleven in het wild-het meest unieke instructable tot nu toe

u hebben net wakker om jezelf te vinden op de grond in het wild.  Vóór het opstaan vanuit je liggende positie realiseert je je dat, naast het feit dat niet in uw eigen warme comfortabele bed, u hebben gewekt in het kreupelhout onder het bladerdak van
Stalen Python Knex achtbaan - instructies

Stalen Python Knex achtbaan - instructies

is terug iedereen-staal Python!Dit model is de recreatie van mijn oudere ontwerp, met een paar kleine wijzigingen, aangezien ik nooit had specifieke foto's van het origineel. Dit ontwerp heeft natuurlijk zijn gebreken, zodat u wellicht om te knoeien