Sichtweite [gelöst]

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

CO2

ehemals "SirMO"

Betreff: Sichtweite [gelöst]

BeitragMo, Feb 08, 2010 21:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo liebe community,

ich wollte gerne wissen, ob ich die Sichtweite bei einem 3D-Spiel selbst bestimmen muss, oder ob die von Blitz Basic selbst berechnet wird (ja ich weiß, ein richtiger programmierer sollte sowas selbst herausfinden, allerdings habe ich noch kein Spiel, mit dem ich das herausfinden könnte).

außerdem noch, ob man, wenn man einen Ordner erstellt, amn irgendwo noch Attribute dafür eingeben kann (außer manuell über windows)
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti
  • Zuletzt bearbeitet von CO2 am Di, Feb 09, 2010 15:04, insgesamt einmal bearbeitet

Nicdel

BeitragMo, Feb 08, 2010 21:42
Antworten mit Zitat
Benutzer-Profile anzeigen
1: CameraRange, CameraFogRange

2: Ja, über das Kommandozeilen-Programm "attrib.exe", das kannst du mit ExecFile aufrufen.
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7

N0X

BeitragMo, Feb 08, 2010 21:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo!
Schau dir mal CameraRange an.

Mfg,
N0X

//EDIT:
Mist, zu spät. Sad
Projekte: |Tibario| http://www.blitzforum.de/worklogs/325/ | 5%
 

CO2

ehemals "SirMO"

BeitragMo, Feb 08, 2010 21:48
Antworten mit Zitat
Benutzer-Profile anzeigen
zwei fragen fallen mir da doch noch ein:

kann man 3D Modelle mit der Zeit ändern (im Spiel zum Beispiel Türen auf-zu)
wenn ja, wie? (tutorial)

und kann man Variablen auch auf 3D-Modelle setzen z.B.: das nummernschild eines Modells, was bei jedem Auto unterschiedlich ist
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti

skey-z

BeitragMo, Feb 08, 2010 22:05
Antworten mit Zitat
Benutzer-Profile anzeigen
1. Ja, es kommt aber darauf an, wie du diese Objekte lädst

1a. als separates Mesh, dann musst du es manuell dort plazieren, wo du es hinhaben möchtest und kannst es über die normale Variable mit der du das Objekt lädst ansprechen und dann zb RotateEntity anwenden

1b. als animiertes Mesh LoadAnimMesh, dann muss jedes Objekt welches du anspechen möchtest einen einmaligen Namen haben (z.B. door01, door02, etc), die Objekte kannst du dann über FindChild laden und separat speichern, um sie später mit den ganz normalen Befehlen (Move, Rotate, etc) anzusprechen


2.Das musst du wohl über Types lösen
Code: [AUSKLAPPEN]

Type TCar
 Field car%
 Field kfz$
End Type
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter
 

CO2

ehemals "SirMO"

BeitragMo, Feb 08, 2010 22:09
Antworten mit Zitat
Benutzer-Profile anzeigen
und wie setze ich dann die variable kfz$ auf das modell?
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti

skey-z

BeitragMo, Feb 08, 2010 23:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Das geht so nicht, schau dir mal ein Tutorial zu Types an, falls du das noch nicht gemacht hast

Wenn ich dich richtig verstehe, möchtest du natürlich auch das KFZ auf das Modell malen?

Das wäre am einfachsten, wenn du an die Stelle, an der das Nummernschild zu sehen seien soll, ein extra Quad erstellst und das KFZ in die Textur schreibst.
Soweit ich das noch in Erinnerung habe, geht das aber leider nciht, deshalb musst du erst ein Image erstellen und dort das KFZ reinschreiben und dann den Imagebuffer in den Texturebuffer für das Nummernschild kopieren.
Es sei den in den letzten paar Updates hat es sich geändert.

Falls ich es schaffe, schreibe ich morgen mal einen Code dazu, wenn ich von der Arbeit komme, es sei den du hast es bis dahin selber geschafft.
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter
 

CO2

ehemals "SirMO"

BeitragDi, Feb 09, 2010 14:57
Antworten mit Zitat
Benutzer-Profile anzeigen
ok, danke
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti

skey-z

BeitragDi, Feb 09, 2010 18:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Hier mal ein kleines Beispiel, ich benutze die Version 1.103

Code: [AUSKLAPPEN]

Graphics3D 800, 600, 32, 0

img_y = 300
kfz$ = "AA-BB 999"

tmpTex = CreateTexture(128, 128)

pivCam = CreatePivot()

cam = CreateCamera(pivCam)
   PositionEntity cam, 0, 1, -3

light = CreateLight()

plane = CreatePlane()
   EntityColor plane, 128, 128, 128
   
car = CreateCube()
   ScaleEntity car, .5, .25, 1
   TranslateEntity car, 0, 1, 0
   EntityColor car, 255, 255, 255

SetBuffer TextureBuffer(tmpTex)

   Color 255, 255, 255
   ClsColor 0, 0, 0
   
   Text 64, 64, kfz$, 1, 1      ;mittig auf die Textur zeichnen
      
SetBuffer BackBuffer()

EntityTexture(car, tmpTex)


Repeat

   
   kd_left = KeyDown(203)
   kd_right = KeyDown(205)
   
   kd_up = KeyDown(200)
   kd_down = KeyDown(208)
   
   If kd_left Then
      TurnEntity pivCam, 0, 1, 0
   ElseIf kd_right Then
      TurnEntity pivCam, 0, -1, 0
   EndIf
   
   If kd_up Then
      img_y = img_y - 1
   ElseIf kd_down Then
      img_y = img_y + 1
   EndIf
   

   RenderWorld
   
   Flip
   Cls
Until KeyHit(1)

End


Sollte soweit selbsterklärend sein
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter
 

CO2

ehemals "SirMO"

BeitragDi, Feb 09, 2010 21:39
Antworten mit Zitat
Benutzer-Profile anzeigen
danke
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti

Silver_Knee

BeitragMi, Feb 10, 2010 15:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Falls du es auf geladene Texturen aufzeichnen willst: LoadTexture Spaart speicher indem es bereits geladene Texturen nicht nochmal lädt. DH alle autos hätten übermalte Kennzeichnen. Dann einfach die textur mit anderem namen neu laden (copyfile)

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group