Umrechnungsformel ect von 3d auf 2d
Übersicht BlitzMax, BlitzMax NG Beginners-Corner
Mathias-KwiatkowskiBetreff: Umrechnungsformel ect von 3d auf 2d |
Fr, Aug 14, 2020 13:18 Antworten mit Zitat |
|
---|---|---|
huhu nach extrem langer zeit beschäftige ich mich wieder mal mit 3d zeugs^^ und dazu habe ich gleich auch paar fragen.
was nutze ich? (minib3d) läuft auch also demnach alles top! es soll ähnlich wie b3d sein schätz ich^^... naja gut nun zu meiner frage, ich würde gerne eine kugel anzeigen lassen (textur planet erde) das spiel ist eigentlich ein 2d game. aber ich könnte ja anstelle 100 bilder zu machen eine kugel darstellen und darauf eine textur "erde" und diese kugel rotieren lassen. (was ich auch schon kann juchu^^) mein problem ist die positionierung meine 2d map hat 5000x5000 wenn ich nun ein 3d objekt auf z.b. 4500x4500 setze ist es ganz woanders als eben kurz vorm ende der 2d map, könnte daran liegen das die kamera position auch eine rolle spielt. aber um zu erreichen was ich eigentlich möchte nämlich das die kugel an pixel 4,5kx4,5k (in 2d) ist gibts nur 2 möglichkeiten.. entweder ich kanns umrechnen also 3d auf 2d oder ich bastel mir ein editor wo ich dann die kugel hinklicke. und bei beiden habe ich ein problem. camerapic begreif ich nicht da ich keine 2d koordinaten bekomme. (zum positionieren der kugel) und wie ich umrechne von 3d auf 2d ist mir ebenfalls ein rätsel. wäre echt cool wenn mir wer helfen kann. es soll halt ein 2d spiel bleiben, nur ein rotierenden planeten z.b. geht mit hilfe 3d schon wesentlich entspannter. ich hoffe ich konnte mein anliegen anähernd gut beschreiben. wenn ich mich auch durch diese frage ehr gequält habe da es mir schwer fällt das auszudrücken was ich eigentlich möchte hier noch mein test code der eigentlich nicht helfen wird (schätz ich) Code: [AUSKLAPPEN] SuperStrict
Import sidesign.minib3d Graphics3D (DesktopWidth(), DesktopHeight(), 32, 0) AntiAlias 16 Local cam:TCamera = CreateCamera() PositionEntity cam, 0, 0, -15 Local light:TLight = CreateLight(1) Local tex:TTexture = LoadTexture("Data\Textur\000.jpg") Local sphere:TMesh = CreateSphere(24) PositionEntity sphere, 0, 0, 0 ScaleEntity(sphere, 1, 1, 1) EntityTexture sphere, tex Local X:Float = 0, MoveX:Float While Not KeyDown(KEY_ESCAPE) RotateEntity(sphere, 0, X, 0) X = X - 0.1 If X < 0 Then X = 359 PositionEntity sphere, MoveX, 0, 0 MoveX = MoveX + 0.1 If MoveX > 1980 / 2 Then MoveX = 0 RenderWorld BeginMax2D() ' MiniB3D function DrawText MoveX, 0, 0 EndMax2D() ' MiniB3D function Flip Cls Wend |
||
Skype: Anarchie1984
http://projektworks.de/maxbase/ Icq - Erneuert am 21.08.2017 Yahoo - Erneuert am 21.08.2017 |
Übersicht BlitzMax, BlitzMax NG Beginners-Corner
Powered by phpBB © 2001 - 2006, phpBB Group