"2D mit 3D"

Übersicht BlitzBasic Beginners-Corner

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen

 

Gast

Betreff: "2D mit 3D"

BeitragMo, Dez 20, 2004 20:02
Antworten mit Zitat
Hallo Zusammen,

Ich würde gerne mal wissen, wie ich mit Blitz3D Sprites so zeichen kann, dass ich im Funktionsaufruf wie bei BlitzBasic reale Bildschirmkoordinaten (zB. 300) nutzen kann, da man mit 3D-Sprites viel mehr machen kann (drehen,stauchen, farbe ändern, transparenz etc.) als mit "Standard"-Sprites.

Außerdem würde mich interessieren, wie man dann die Kollisionsabfrage bei gedrehten Sprites realisieren will (ImageCollide() fällt da ja wohl weg).

THX
 

Sibitiger

BeitragMo, Dez 20, 2004 21:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Meines Wissens nach geht das nicht (is doch eigentlich klar oder).
Man kann ja auch nicht in einem 3D Raum nur Koordinaten benennen, die die Tiefe nicht einbeziehen. Du könntest dir aber zum Beispiel eine Funktion basteln (das is eine sehr einfache in1 min zusammen gebastelt):
BlitzBasic: [AUSKLAPPEN]


Function DrawImage (name,x,y);oder drawsprite wie du willst, du musst damit aber sprites ansprechen!

If name=0 Then Return 0
If name<>0 Then Return 1

PositionEntity name,x,y,5

End Function

Natürlich kann man diese noch beliebig erweitern und/oder ändern...

Sibitiger

BladeRunner

Moderator

BeitragDi, Dez 21, 2004 9:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Natürlich kannst du eine Funktion schreiben, welche 2D-Koordinaten für 3D Befehler verwendet. Nur sicher nicht so wie sibitiger das vorschlägt.
Wichtig dabei:
- bei 3d liegt die y-achse spiegelverkehrt zu 2d. Zudem sitzt der Nullpunkt nicht in der linken oberen Ecke, sondern ist ja abhängig von der Kameraposition
-wenn du 2d und 3d mischen willst, beachte dass der clsmode der Camera geändert werden muss.
- ich würde dir raten deine Kamera graphicswidth()-weit von der Zeichenebene zu erstellen. Dadurch kannst du alle Objekte 1:1 (von der Größe) übernehmen. Allerdings musst du die Objekte auf der x- und y-Achse noch etwas verschieben. (spiel damit herum, es ist nicht schwer herauszufinden Wink )

Was die Kollisionsermittlung angeht: Da musst du dir eigene Routinen erstellen. aber zumindest eine simple "rotaterectcollide" sollte recht schmerzfrei zu realisieren sein.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

Gast

BeitragDi, Dez 21, 2004 20:45
Antworten mit Zitat
Vielen dank für den tip mit der kameraentfernung.

Wieso wurde das hier eigentlich nach Beginner-Fragen verschoben?
im 3d Teil gibts noch viel dümmere Fragen
 

Gast

BeitragDo, Dez 23, 2004 20:01
Antworten mit Zitat
Hallo?

Firstdeathmaker

BeitragFr, Dez 24, 2004 0:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich denk mal weil es ne Beginnerfrage ist, wa?
www.illusion-games.de
Space War 3 | Space Race | Galaxy on Fire | Razoon
Gewinner des BCC #57 User posted image
 

Gast

BeitragSo, Dez 26, 2004 19:39
Antworten mit Zitat
Was soll das eigentlich?

Das ist ja wohl keine ANFÄNGERFRAGE, zumindest im Vergleich zu dem übrigen Schwachsinnsfragen hier (im Beginner-Forum)

Zitat:
Hallo,
ich wollte mal ein bisschen mit BB rumspielen und hab dabei so ein KLEINES "adressbuch" gemacht bzw. ich bin dabei eins zu machen. nun hab ich aber ein problem. wenn ich alles im programm einegeb(name etc.) und die date ndann auch ausgeben will, gbit er mir immer nur zahlen zurück? ich lese die daten mit "name$" ein und aus. da müsste er doch normalerweise den text so lassen,oder nicht?

Der hat zum Beispiel ReadFloat verwendet (Gott weiß warum), obwohl er doch ReadString() hätte benutzen müssen

oder

Zitat:
Hi@all

Code:

test = imagescollide(...)

if test = 1 then test2 =1



wie mache ich, dass test2 = 1 bleibt, wenn test = 0 wird?

Thx und fröhliche Wheinachten

Dazu sag ich jetzt mal nichts...
 

Gast

BeitragSo, Dez 26, 2004 19:45
Antworten mit Zitat
Nur weil ich vielleicht nicht passensten Titel (eigentlich sogar einen ziehmlich dummen) gefunden habe, heißt das doch nicht, dass für die Frage an sich dasselbe gilt, oder?
 

Gast

BeitragSo, Dez 26, 2004 20:00
Antworten mit Zitat
Zitat:

azureuz:

Hi Leute,
ich teste gerade ein bisschen mit der "delay"-funktion rum.

Code:
DrawImage az,260,100
Delay 5000
Cls

start=menue()

Function menue()
Text 300,400/2, "Test"
WaitKey()
End Function


wieso löscht er nicht nach 5 sekunden das bild und zeigt den text an?


Apocalyptic:

In dem Codeschnipsel ist kein Fehler...
Verwendest du vielleicht Doubblebuffering?

azureuz

hab oben "SetBuffer BackBuffer()" stehen. hat das was damit zutun?



Neeeeeeiiiiiiin, natürlich NICHT, das weiß doch jeder, dass der obrige Code nur auf AMD-Rechnern funktioniert...
Und der hat sich am 8.8.04 angemeldet, da sollte man doch mal allmählich wissen was Doublebuffering ist...
 

Gast

BeitragSo, Dez 26, 2004 20:04
Antworten mit Zitat
Und so weiter:
Zitat:
Tachchen......
Ich würde gerne wissen wie man prüfen kann ob eine Zahl (in einer Variable) gerade oder ungerade ist. Geht das überhaupt??????

THX
VD


Genauso wie bei "azureus" lautet die Antwort: Nein!
Es ist unmöglich, genau zu bestimmen, ob eine Zahl gerade oder ungerade ist.

(Ich erschiess mich gleich)
 

Gast

BeitragSo, Dez 26, 2004 20:05
Antworten mit Zitat
Uuuupps ich hab doch glatt "azureus" statt "azureuz" geschrieben, es tut mir so unendlich leid
 

Gast

BeitragSo, Dez 26, 2004 20:08
Antworten mit Zitat
Ahahahaha:

Zitat:

Hi @ all!
Ich weiß des kommt n bissle blöd rüber aber des Interessiert mich jetzt. Was ist der unterschied wenn ich:

[syntax:c11562cfd8="bb"]
Repeat

...

Until keydown(1)
[/syntax:c11562cfd8]

benutze, oder

[syntax:c11562cfd8="bb"]
While Not Keyhit(1)

...

Wend
[/syntax:c11562cfd8]

Was ist da bitteschön der Unterschied? Ist eines schneller oder was. THX

--------------------------

Bei Repeat Until wird die Schleife mindestens einmal "ausgeführt".
Bei While Wend vielleicht nicht, wenn die Bedingung von Anfang an nicht True
ist.

Wenn du also die ESC-Taste drückst und dein Programm startest, dann wird die Schleife beim 1. Beispiel einmal durchlaufen, beim 2. gar nicht....


Geht ja ansich noch, aber jetzt kommts:
Zitat:

Und ich glaub while/wend ist schneller...


DAS soll er mal beweisen, der Spikespine
 

Gast

BeitragSo, Dez 26, 2004 20:12
Antworten mit Zitat
So was ist auch immer schlimm:

Zitat:

Hi
Ich wollt Einen geilen 2D Alienshooter schreiben, aber der ist nur Halb so Geil Wenn man nich schießen kann.

Kann mir Bitte mal wer erklären wie das geht?


Hi
Ich bin begeisterter Fan von World of Warcraft und will versuchen es nachzuprogrammieren. Gibt es hier vielleicht wen, der mir (möglichst schnell) erklären kann, wie das geht?

Hubsi

BeitragSo, Dez 26, 2004 20:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Wow, sechs Posts am Stück für nix und wieder nix Shocked
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...
 

Gast

BeitragSo, Dez 26, 2004 20:15
Antworten mit Zitat
Jaja du mich auch

Ralf

BeitragSo, Dez 26, 2004 20:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Ist aber Rekordverdächtig!

Wie war das noch mit dem Unterhaltungswert in diesem Forum: Den kann man scheinbar doch noch Toppen.
 

feider

ehemals "Decelion"

BeitragSo, Dez 26, 2004 20:55
Antworten mit Zitat
Benutzer-Profile anzeigen
@ JenDan:
Wir wolln meehhr spääääämings sehn, wir wolln dich weiiit weg sehn... Rolling Eyes

BladeRunner

Moderator

BeitragSo, Dez 26, 2004 23:23
Antworten mit Zitat
Benutzer-Profile anzeigen
JenDan: was soll der Spam. Ob und wie die mods Beiträge verschieben kann Dir doch egal sein. Dir wurde doch geantwortet.
Und besser machst Du es auch nicht durch das zumüllen des Forums. Du handelst Dir höchstens nen Ban ein.
Aber nicht mein Problem.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

feider

ehemals "Decelion"

BeitragSo, Dez 26, 2004 23:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Ihr seid gemein zu ihm! Sad Sad Sad Sad
Ich auch! Twisted Evil Twisted Evil
Da setzt sich der Trottel doch wirklich hin und sucht sinnloses Zeugs...
Nur um von uns angemeckert zu werden...
Oder ist er ein bezahlter Pausenclown?

BladeRunner

Moderator

BeitragSo, Dez 26, 2004 23:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Grade Du solltest dich etwas zurückhalten, wammerl. Du glänzt hier im Forum auch nicht gerade durch besonders tiefsinnige Beiträge.
Hoffentlich wird der Sch.. hier getrashed.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group