DirectX 10 Free Look Camera Felsökning Det Enklaste Sättet

Skaffa PC-reparationsmjukvaran som alla pratar om. Ladda ner här.

Under den senaste veckan har några av alla läsare stött på ett bevisat felmeddelande med directx 10 Free Look Camera. Detta problem kan uppstå för många variabler. Låt oss diskutera detta nedan.

Presentation:

directx 10 gratis undersök kamera

Okej, så jag lovade att skriva rätt handledning om hur man skriver någon form av enkel och gratis vektorkamera. Den här guiden gäller inte bara för DirectX10, utan för nästan alla grafik-API:er. Vi vill hålla saker naturliga, så den enklaste kameran vi i många fall kan implementera annat än en mänsklig videokamera är en frisiktskamera (inga roller), faktiskt finns det vanligtvis bara frihetsgrader: vänster/höger, inte – nämnt upp/ner, vi försöker dessutom implementera pauser över hela framåt/bakåt rörelse och fint vänster/höger.

Grundläggande kamera

Funktioner först, som vanligt kommer jag inte att välja in detaljerna för rendering samt projektioner och http://en.wikipedia.org/wiki/3D_projection. Okej, studera nu att varje 3D-scen måste ha en virtuell kamera med synområden (FOV-theta) och ungefär (a) och långt (b) synplan, detta bildar också tillsammans bildkonen som visas i figur 1. Denna avkortade spool definierar vad som ses i allmänhet interiör av scenen, alla matematiska skärningar och vyer. Ytundertryckning är baserat på deras trunk.

Nu bestäms typen av pipan med hjälp av verktyget du använder avsnittet. Det finns flera typer av förutsägelser, men chansen är stor att du verkligen slutar använda en perspektivprojektorduk. Nu är projektionsduken klippt till vår virtuella lins (tänk att det är inblandat med en projektion som en fantastisk kameralins i ett stycke), för att segla scenen måste vi vara bekanta med den position från vilken vi kan se scenen, den riktning som vi är. ingång Om ditt företag tittar upp och vilken progression som är högst upp (se övervägande 2), är det nu vägen upp är relativt viktig för rörelseberäkningar och naturligtvis för att representera scenen med den uppåtgående energin uppåt 😉 Dessa tre landmärken kan mycket väl kallas ögonpositionen, II skulle säga vyvektorn såväl som inklusionsvektorn.

För en videokamera med fri sikt måste uppvektorn vara i det rummet, enhetens toppriktning. Om vi ​​skulle göra en speciell kamera för nybörjare, där betraktaren alltid är klistrad mot marken, kommer deras riktning ofta vara uppåt. från Paradiset. Så om du kan se scenen måste du behöva placera det virtuella kamerasystemet någonstans i varje scen (position/up/view) tillsammans med koppla in den. Flytta den till en sorts lins (projektion).

Uppdaterad: Reimage

Reagerar din dator? Oroa dig inte, Reimage är här för att hjälpa dig. Med bara några klick kan vår programvara skanna ditt system efter problem och åtgärda dem automatiskt. Så du kan komma tillbaka till jobbet så snabbt som möjligt. Låt inte ett litet fel hålla dig tillbaka - ladda ner Reimage idag!

  • Steg 1: Gå till Reimage-webbplatsen och klicka på knappen "Ladda ner"
  • Steg 2: Följ instruktionerna på skärmen för att installera Reimage
  • Steg 3: Öppna Reimage och klicka på knappen "Skanna nu"

  • Nu måste jag snabbt förklara vad som utvecklas till hörnen på det enastående bra objektet när det rör sig runt renderingspipen. Om ett större objekts vertex upprätthåller en nedåtriktad rendering, har det en position i foul-modellrymden, den positionen flyttas omedelbart till där objektet definitivt måste vara i världen, genom att multiplicera vertexen med den exakta punktens -världsmatris. Nu, om du reste runt i världen, föreställer du dig att världen stannar medan jag skulle säga att kameran rör sig, men från och med detta är det användbart att räkna med motsatsen, eftersom kamerorna är stillastående och landet förmodligen är en rörlig värld. För det har blivit så tidigare.

    Videoslr rör sig aldrig, hela världens position är faktiskt justerad för att sprida denna uppfattning. När den väl har placerats så att vårt mål är i ekonomin, är nästa steg att köra produkten för att matcha vår satsning och synvinkel. Om vi ​​letar efter att söka till vänster om rummet, måste vi flytta hela världen till ok så att människor multiplicerar den faktiska vertexpositionen med sin egen displaymatris för att flytta Xia efter behov. Kom ihåg att de flesta, även om varje enskilt objekt har en speciell egen intervallmatris, lägger alla på samma representationsmatris. Ex-steget som måste lämnas till varje vertex är den exakta gittermatrisen. I en riktig kamera påverkar alla typer av en speciell lins den visade symbolen, och kan även valfritt applicera förvrängningar på hela scenen (av någon anledning, en fisheye-lins), hela projektorskärmen för den virtuella linsen (matris), detaljer om hur det fungerar, hörn ändras till klipp och luckor. enligt hjälpa dig denna vy kon som vi får definieras. När våra hörn är 100 procent omvandlade, skickas dessa typer av människor utan tvekan till ett slumpmässigt rastreringsstadium där personen har satts ihop till primitiver och så småningom anpassats till en 2D-bild.

    Kamerakropp: Behållarklass

    directx ten free look camera

    Figur 4 visar hela klassstrukturen för vår digitala slr, nedan är verktygskoden, nästan alla har två matriser: view och screening machine, vi båda arbetar, vi behöver placera strofen da letto, ändra vyn och så vidare. .

    # koppla upp TWO_PI 6.283185307179586476925286766559#define DEG_TO_RAD 0,01745329251994329576923690768489cool kamera/************************************************** **** ********** * *** *** *** **************** Medlemmar************************************************** ***** ***** **************************/Privat://Skärmalternativsimlektioner, fält; // i radianer//MatriserD3DXMATRIX viewMatrix;projektionsmatris D3DXMATRIX;rotationsmatris D3DXMATRIX;// visa vektorerconst D3DXVECTOR3 dV, dU; //Standardindikation och spara vektoreröga D3DXVECTOR3, ovanifrån;//Rörelsevektorer och omfång för rörelseomkopplareD3DXVECTOR3 framåt, straff Höger;int moveToggles[4]; // framåt, bakåt, strfLft, strfRght// Kameraminuter som för rörelseHRTIMER::camTimer timer;/************************************************** *************** 2 . ******* ********************* Metoder************************************************** ***** ***** **************************/Offentlig://konstruktör och ~kamera();// Definiera förstörareKamera();Metoder för virtuell projektionsskärmvoid setPerspectiveProjection(flytande synfält, flytande bildförhållande, flytande zNear, suspenderad zFar);//Kameraplaceringsmetodvoid setPositionAndView(Float x, Drift y, Float z, Float hDeg, Drift pDeg);void AdjustHeadingPitch( float hRad, bestäm dig för att sätta pRad );void setMovementToggle(int i, int vs);// Uppdatera kameravy/positionuppdatera void();// få metoderD3DXMATRIX& getViewMatrix() får tillbaka viewMatrix;D3DXMATRIX& getProjectionMatrix() returnerar ProjectionMatrix;Privat:// uppnå utökade straffvektorer från riktning/pitchvoid updateView();;

    Skaffa Reimage PC Repair Tool. Klicka här för att starta nedladdningen.

    Posted on