AddTriangle Problem

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

 

feuerball11

Betreff: AddTriangle Problem

BeitragDi, Jul 05, 2011 14:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo Leute.

Habe folgendes Problem:

Ich arbeite mich aktuell etwas in die 3D Funktionen von B3D ein, und bin jetzt bei AddTriangle angekommen. Habe mir die BB Hilfe durchgelesen und meine eigentlich es verstanden zu haben.. nur BB sagt das es Falsch ist..

Wenn mir bitte jemand helfen könnte und mir sagen was im folgenden Code falsch ist, wäre ich sehr dankbar. Ich selber habe nämlich kein blassen Schimmer.

Code: [AUSKLAPPEN]
      tmp = CreateMesh()
      tms = CreateSurface(tmp)
      v01 = AddVertex(tms,+1,+1,+1)
      v02 = AddVertex(tms,+1,+1,-1)
      v03 = AddVertex(tms,-1,+1,+1)
      v04 = AddVertex(tms,-1,+1,-1)
      AddTriangle (tms, v01, v02, v03)
      AddTriangle (tms, v02, v04, v03)
      EntityColor tmp,r,g,b
      PositionEntity tmp x,y,z
      tmp = 0


Gruß Feuerball11

*Edit*:

B3D Sagt immer: "Expecting ')'" nach "AddTriangle (tms"
 

mDave

BeitragDi, Jul 05, 2011 15:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Mhhh,
Code: [AUSKLAPPEN]
PositionEntity tmp x,y,z

mhhh:
Code: [AUSKLAPPEN]
PositionEntity tmp,x,y,z


lg
 

feuerball11

BeitragDi, Jul 05, 2011 15:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Oh das habe ich übersehen.. ändert aber leider nichts an meinem Problem -.-

Xeres

Moderator

BeitragDi, Jul 05, 2011 15:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich würde tmp = 0 weglassen... Der Mesh bleibt da, aber du kannst nicht mehr auf ihn zugreifen.
Ansonsten: Der Fehler liegt nicht in diesem Stück Code.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)
 

feuerball11

BeitragDi, Jul 05, 2011 15:14
Antworten mit Zitat
Benutzer-Profile anzeigen
tmp = 0 ist Absicht.. aber egal.. wenn der Fehler hier nicht ist, warum zeigt B3D ihn dann an?.. naja egal.. Dann eben hier der ganze Code: (ich nutze Ideal, deswegen die ;[BLOCK]) Der Code ist noch im Aufbau deswegen sehr unvollständig.. aber ich denke das Spielt hier nichts zur Sache. Mein einziges Problem ist das es nicht Startet, und ich nicht wies warum..

Code: [AUSKLAPPEN]
Graphics3D 800,600,0,2
SetBuffer BackBuffer()

Global t


Type cube
   Field x
   Field y
   Field z
   Field rgb[2]
End Type


Global cams = CreateSphere(30)
EntityType cams,1
;ScaleEntity cams,3,3,3
EntityRadius cams,10
Global cam = CreateCamera(cams)


For x = -5 To 5
   For y = -5 To 5
      c.cube = New cube
      c\x = x*2
      c\y = -20
      c\z = y*2
      c\rgb[0] = 255
      c\rgb[1] = 255
      c\rgb[2] = 255
   Next
Next


For c.cube = Each cube
   add_cube(c\x,c\y,c\z,c\rgb[0],c\rgb[1],c\rgb[2])
Next


;For x# = -10 To 10 Step 2
;   For y# = -10 To 10 Step 2
;      cube = CreateCube()
;      PositionEntity cube,10+(x#*1),-20,0+(y#*1)
;EntityType cube,2
;Next
;Next

Repeat
   Cls
   TurnEntity cams,0,-MouseXSpeed(),0
   TurnEntity cam,MouseYSpeed(),0,0
   If KeyDown(17) Then MoveEntity cams,0,0,0.1
   If KeyDown(30) Then MoveEntity cams,-0.1,0,0
   If KeyDown(31) Then MoveEntity cams,0,0,-0.1
   If KeyDown(32) Then MoveEntity cams,0.1,0,0
   MoveEntity cams,0,-0.1,0
   Collisions 1,2,2,2
   t = t + 1
   If t = 10
      MoveMouse 400,300
      t = 0
   EndIf
   UpdateWorld
   RenderWorld
   Flip
Until KeyHit(1)

Function add_cube(x,y,z,r,g,b)
   Local tmp,tms,v01,v02,v03,v04
   ;[Block] oben
   LinePick (x,y+1.5,z,x,y+1.5,z,0.1)
   If PickedEntity() <> Null
      
   Else
      tmp = CreateMesh()
      tms = CreateSurface(tmp)
      v01 = AddVertex(tms,+1,+1,+1)
      v02 = AddVertex(tms,+1,+1,-1)
      v03 = AddVertex(tms,-1,+1,+1)
      v04 = AddVertex(tms,-1,+1,-1)
      AddTriangle (tms, v01, v02, v03)
      AddTriangle (tms, v02, v04, v03)
      EntityColor tmp,r,g,b
      PositionEntity tmp,x,y,z
      tmp = 0
   EndIf
   ;[End Block]
   ;[Block] unten
   ;[End Block]
   ;[Block] links
   ;[End Block]
   ;[Block] rechts
   ;[End Block]
   ;[Block] vorne
   ;[End Block]
   ;[Block] hinten
   ;[End Block]
End Function

Xeres

Moderator

BeitragDi, Jul 05, 2011 15:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
If PickedEntity() <> Null

Entitys sind keine Types! Besser:
Code: [AUSKLAPPEN]
If PickedEntity() <> 0
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)
 

feuerball11

BeitragDi, Jul 05, 2011 15:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Und wieder keine Besserung -.- da steckt der Wurm drinn

Xeres

Moderator

BeitragDi, Jul 05, 2011 15:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Der Code gibt bei mir keinen weiteren Error, der Fehler liegt woanders... Schließende Endifs & Schleifenenden wären noch eine Möglichkeit.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)
 

feuerball11

BeitragDi, Jul 05, 2011 15:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Hmm.. Ich glaube langsam mein Compiler spinnt... Ich Versuchs mal auf meinem Laptop... Schleifen oder weiteres bringt nicht wirklich viel.. er compiliert ja gar nicht erst..

Xeres

Moderator

BeitragDi, Jul 05, 2011 15:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Dann muss er dir aber einen Fehler anzeigen... Wenn man Ifs oder Schleifen nicht richtig schließt, beschwert sich der Compiler u.U. an anderen Stellen.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)
 

feuerball11

BeitragDi, Jul 05, 2011 15:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Er sagt nur was ich schon geschrieben habe:

Expecting ')'

Genau bei AddTriangle (tmp

Komplette Meldung:

Expecting ')'
File: E:\New.bb
Line 81, Column:19
 

pinochino

BeitragDi, Jul 05, 2011 15:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Ein Komma vergessen?
Ein IF nicht geschlossen ?

lg
 

feuerball11

BeitragDi, Jul 05, 2011 15:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Bin ich schon alles durchgegangen.. ich finde einfach nichts -.-
 

pinochino

BeitragDi, Jul 05, 2011 15:37
Antworten mit Zitat
Benutzer-Profile anzeigen
BlitzBasic: [AUSKLAPPEN]
PositionEntity tmp x,y,z  ; Da vllt?



EDIT:BlitzBasic: [AUSKLAPPEN]
PositionEntity tmp, x,y,z; 3D Bin ich noch nich weit :D 



Aus der Hilfe:BlitzBasic: [AUSKLAPPEN]
PositionEntity entity%, x#, y#, z# [, Global%] 
 

feuerball11

BeitragDi, Jul 05, 2011 15:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Da liegt zwar ein Problem, aber nicht DIESES ... das mit dem Positionentity habe ich schon behoben.

*edit* WTF Ich habs! Habe die Klammern Gelöscht und nun gehts... Komische sache...

skey-z

BeitragDi, Jul 05, 2011 18:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Also ich habe es in der Original IDE geladen und er markierte mir auch nur die Prüfung von PickedEntity() <> NULL, nach ersetzen durch 0 funktionierte es ohne Probleme.

Ich würde mal auf einen Fehler von Ideal tippen, ich meine, dass ich damals auch ein paar kleine Probleme hatte und nicht auf die Lösung kam, dann wieder auf die BBide gewechselt und es lief.
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group