Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

OpenB3D Fragen
Gehe zu Seite 1, 2  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
0oFreako0



Anmeldungsdatum: 17.12.2011
Beiträge: 114

BeitragVerfasst am: 23.12.2011, 18:49    Titel: OpenB3D Fragen Antworten mit Zitat

Hi ich hätte kurz ein paar Fragen zur minib3d Engine.

-Ist die Engine komplett freeware also auch falls man sie kommerziell für seine Produkte nutzen will?

-Wie sieht es mit der Syntax aus also muss ich komplett auf B3D Syntax zurückgreifen? Oder kann ich weiterhin auch den Syntax von Freebasic weiterbenutzen. Zb für OOP Programmierung?

Habt ihr sie schon mal benutzt und könnt ihr mir sagen ob diese Engine sich lohnt oder ist es besser ehr reinen OpenGL-Code zu coden?
Aber ich denke diese Engine beinhaltet ja auch schon Collisions Routinen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Westbeam



Anmeldungsdatum: 22.12.2009
Beiträge: 760

BeitragVerfasst am: 23.12.2011, 18:53    Titel: Antworten mit Zitat

OpenB3D ist FreeWare und du kannst damit natürlich auch kommerzielle Programme schreiben.
Du kannst natürlich immer noch alle FreeBasic Befehle nutzen, auch die zur OOP-Programmierung.
Zitat:
Habt ihr sie schon mal benutzt und könnt ihr mir sagen ob diese Engine sich lohnt oder ist es besser ehr reinen OpenGL-Code zu coden?

Ich schreibe mit dieser Bibliothek mein Spiel "X-the forgotten battles"(kannst ja mal im Projektevorstellungs Unterforum gucken). zwinkern
Du kannst mit OpenGL das Gleiche machen wie mit OpenB3D auch, nur wird es mit OpenGL länger dauern.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4704
Wohnort: ~/

BeitragVerfasst am: 23.12.2011, 19:04    Titel: Antworten mit Zitat

Als kleine Ergänzung zur Lizenzfrage: Ein kurzer Blick in die Programmdateien verrät, dass die Bibliothek unter der LGPL steht.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
braesident



Anmeldungsdatum: 15.04.2008
Beiträge: 189
Wohnort: Berlin

BeitragVerfasst am: 19.02.2013, 23:50    Titel: Antworten mit Zitat

hi, ich wollt mir mal openB3D ansehen. Bekomme aber die Fehlermeldung das Variablen in der 2D.bi nicht deklariert wurden.

GL_BGRA in 'glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,TEXX,TEYY,0,GL_BGRA,GL_UNSIGNED_BYTE,TMP+sizeof(fb.image))
GL_UNSIGNED_SHORT_5_6_5 in 'glTexImage2D(GL_TEXTURE_2D,0,GL_RGB,TEXX,TEYY,0,GL_RGB,GL_UNSIGNED_SHORT_5_6_5,TMP+sizeof(fb.image))
glActiveTexture in 'glActiveTexture(GL_TEXTURE0)
glClientActiveTexture in 'glClientActiveTexture(GL_TEXTURE0)

Benutze den Code aus dem Portal Tuturial und hab die openB3D 0.6 geladen

Code:
#Include "3D/openb3d.bi"
#Define Render_OpenGL
#Include "FreeImage.bi"
#Include "3D/2d.bi"

Screenres 1024, 600, 32
Graphics3D 1024, 600, 32


Var light=CreateLight()
Var cam=CreateCamera()
Var cube=CreateCube()

Do
    UpdateWorld
    RenderWorld
    PositionEntity cube, 0, 0, 5
    Sleep 1
    ScreenSync
Loop Until Inkey=Chr(27)
ClearWorld
End
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 20.02.2013, 00:21    Titel: Antworten mit Zitat

GL_BGRA und GL_UNSIGNED_SHORT_5_6_5 sind in der glext.bi declariert (weiß ehrlich gesagt auch nicht wieso, gehört da mMn nicht rein)
also diese in der openb3d header dazu linken...

glActiveTexture und glClientActiveTexture müssen unter Windows auch erst 'definiert' werden (keine Ahnung wieso das scheinbar nach all der Zeit unter Windows nie getestet oder behoben worden ist)
Code:

dim shared glActiveTexture as PFNGLACTIVETEXTUREPROC
dim shared glClientActiveTexture as PFNGLCLIENTACTIVETEXTUREPROC

glActiveTexture = ScreenGLProc("glActiveTexture")
glClientActiveTexture = ScreenGLProc("glClientActiveTexture")

irgendwo nach erstellen eines Context... hab die header gerade nicht hier...
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
braesident



Anmeldungsdatum: 15.04.2008
Beiträge: 189
Wohnort: Berlin

BeitragVerfasst am: 20.02.2013, 09:18    Titel: Antworten mit Zitat

ich hab das jetzt so gemacht
Code:
#Include "GL/glext"
#Include "3D/openb3d.bi"
#Define Render_OpenGL
#Include "FreeImage.bi"
#Include "3D/2d.bi"


aber wo ich
Code:
dim shared glActiveTexture as PFNGLACTIVETEXTUREPROC
dim shared glClientActiveTexture as PFNGLCLIENTACTIVETEXTUREPROC

glActiveTexture = ScreenGLProc("glActiveTexture")
glClientActiveTexture = ScreenGLProc("glClientActiveTexture")

einfügen soll kann ich nicht finden neutral
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 20.02.2013, 09:51    Titel: Antworten mit Zitat

neue 2d.bi
Code:

#include once "fbgfx.bi"
#include once "GL/gl.bi"
''-- by EternalPain
#include once "GL/glext.bi"
#Ifdef __FB_WIN32__
dim shared as PFNGLACTIVETEXTUREPROC glActiveTexture
dim shared as PFNGLCLIENTACTIVETEXTUREPROC glClientActiveTexture
#EndIf
''--
#ifdef Render_OpenGL


namespace ogl

dim shared as integer CORS(255)
dim shared as any ptr BUFFER
dim shared as integer TEXTURE,SCRX,SCRY,BPP
dim shared as double OFX,OFY,UPTIME
dim shared as integer FRAMESKIP=0

sub CallScreen( WID as integer,HEI as integer, BPP as integer,PAGS as integer,FLAGS as integer )
  Screenres WID,HEI,BPP,PAGS,FLAGS
  WindowTitle("OpenGL Render")
end sub

' ***** Make a integer multiple of a power of 2 ****
#macro ogl_MulBits( MultipleBits, MyIntVar )
asm
  mov eax,[MyIntVar]
  dec eax
  shr eax,(MultipleBits)
  inc eax
  shl eax,(MultipleBits)
  mov [MyIntVar],eax
end asm
#endmacro
' ***** Raise a integer to a power of 2 *****
#macro ogl_Power2( MyIntNumber )
asm
  mov eax,[MyIntNumber] 
  dec eax
  bsr ecx,eax
  inc ecx
  mov eax,0xFFFF0000 
  rol eax,cl
  and eax,0xFFFF
  inc eax
  mov [MyIntNumber],eax
end asm
#endmacro

end namespace



#undef screenres
sub screenres( WID as integer=-1, HEI as integer=-1, BPP as integer=32, PAGS as integer=1, FLAGS as integer=0 )
 
  dim as integer TEXX,TEYY
  dim as any ptr TMP
  dim as integer SCX,SCY
  ScreenControl(fb.GET_DESKTOP_SIZE,SCX,SCY) 
  if WID=-1 then WID=SCX
  if HEI=-1 then HEI=SCY 
  if WID>=SCX or HEI>=SCY then FLAGS or= fb.gfx_fullscreen
 
  ogl_Power2(BPP)
  if BPP <> 8 and BPP <> 32 and BPP <> 32 then BPP = 32 
  if BPP = 8 then exit sub
  ogl_Mulbits( 3, WID)
  ogl_Mulbits( 3, HEI)
  ogl.SCRX = WID:ogl.SCRY = HEI
  TEXX = WID:TEYY = HEI 
  ogl_Power2(TEXX) 
  ogl_Power2(TEYY)
  ogl.OFX=WID/TEXX
  ogl.OFY=HEI/TEYY 
  ogl.BPP=BPP
  ogl.callscreen WID,HEI,BPP,PAGS,fb.GFX_OPENGL or FLAGS 
  ''-- by EternalPain
  #Ifdef __FB_WIN32__
  glActiveTexture = ScreenGLProc("glActiveTexture")
  glClientActiveTexture = ScreenGLProc("glClientActiveTexture")
  #EndIf
  ''--
  glViewport(0,0,WID,HEI)
  glMatrixMode(GL_PROJECTION)  'Select The Projection Matrix
  glLoadIdentity()             'Reset The Projection Matrix
  glMatrixMode(GL_MODELVIEW)   'Select The Modelview Matrix
  glLoadIdentity()             'Reset The Projection Matrix
  glEnable(GL_TEXTURE_2D)      'Texture Mapping
  glGenTextures 1, @ogl.TEXTURE
  glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_FASTEST)
  glClearColor(0f, 0f, 0f, 1.0f)
  glClear(GL_COLOR_BUFFER_BIT) 
  glLoadIdentity()
  glBindTexture GL_TEXTURE_2D, ogl.TEXTURE
  glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR)
  glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR) 
  if BPP = 8 then BPP=32
  TMP = ImageCreate(TEXX,TEYY,0,BPP)   
  if BPP = 32 then
    glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,TEXX,TEYY,0,GL_BGRA,GL_UNSIGNED_BYTE,TMP+sizeof(fb.image))
  else
    glTexImage2D(GL_TEXTURE_2D,0,GL_RGB,TEXX,TEYY,0,GL_RGB,GL_UNSIGNED_SHORT_5_6_5,TMP+sizeof(fb.image))   
  end if
 
  if ogl.bpp = 8 then
    ogl.BUFFER = TMP
  else
    ImageDestroy(TMP)
  end if
  color ,rgba(0,0,0,0)
  cls 
end sub

#undef screensync

sub screenSync() 
  glColor4f(1.0, 1.0, 1.0, 1.0)

  glActiveTexture(GL_TEXTURE0)
  glClientActiveTexture(GL_TEXTURE0)

  dim BT as double,TMP as any ptr, BUFSZ as integer   
  static as integer FS
  BT=timer
  glBindTexture GL_TEXTURE_2D, ogl.TEXTURE 
  FS += 1
  if FS > OGL.FRAMESKIP then FS=0 
  if FS=0 then
  if ogl.BPP = 32 then   
    glTexSubImage2D(GL_TEXTURE_2D,0,0,0,ogl.SCRX,ogl.SCRY,GL_BGRA,GL_UNSIGNED_BYTE,screenptr) 

  elseif ogl.BPP = 16 then
    glTexSubImage2D(GL_TEXTURE_2D,0,0,0,ogl.SCRX,ogl.SCRY,GL_RGB,GL_UNSIGNED_SHORT_5_6_5,screenptr)
  else
    for BUFSZ = 0 to 255
      'ogl.CORS(BUFSZ) = rgba(64,0,BUFSZ,0)
      Palette Get BUFSZ,ogl.CORS(BUFSZ)
    next BUFSZ
    TMP = screenptr
    BUFSZ = ogl.SCRX*ogl.SCRY
    asm
      mov esi,[TMP]   
      mov edi,[ogl.BUFFER]
      add edi,sizeof(fb.image)
      mov edx,offset ogl.CORS     
      mov ecx,[BUFSZ]
      xor eax,eax
      _8TO32_NEXTPIXEL_:
      lodsb
      mov ebx,[EDX+EAX*4]
      mov [edi],ebx
      add edi,4
      dec ecx
      jnz _8TO32_NEXTPIXEL_
    end asm
    glTexSubImage2D(GL_TEXTURE_2D,0,0,0,ogl.SCRX,ogl.SCRY,GL_BGRA,GL_UNSIGNED_BYTE,ogl.BUFFER+sizeof(fb.image))
  end if
  end if

  glDisable(GL_LIGHTING)
  glDisable(GL_CULL_FACE)
  glDisable(GL_NORMALIZE)
  glMatrixMode (GL_PROJECTION)
  glPushMatrix ()
  glLoadIdentity ()
  glOrtho (-1, 1, -1, 1, -1, 1)
  glEnable(GL_TEXTURE_2D)
  glEnable(GL_BLEND)
  glEnable(GL_ALPHA_TEST)
  glDisable(GL_DEPTH_TEST)
  glMatrixMode (GL_MODELVIEW)
  glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA)
  glLoadIdentity ()

  glBegin(GL_QUADS)     
  glTexCoord2f(ogl.OFX, ogl.OFY):glVertex3f(1,-1,0) 
  glTexCoord2f(0, ogl.OFY):glVertex3f(-1,-1,0) 
  glTexCoord2f(0,0):glVertex3f(-1,1,0) 
  glTexCoord2f(ogl.OFX, 0):glVertex3f(1,1,0) 
  glEnd()
  ogl.UPTIME=timer-BT
  flip

  glEnable(GL_LIGHTING)
  glEnable(GL_CULL_FACE)
  glEnable(GL_NORMALIZE)
  glDisable(GL_TEXTURE_2D)
  glDisable(GL_BLEND)
  glEnable(GL_DEPTH_TEST)


end sub

#else
namespace ogl
dim shared as double UPTIME
dim shared as integer FRAMESKIP=0
end namespace
#endif



Vermutlich nicht optimal gelöst aber so funktioniert dein Beispiel von oben ohne Änderungen, ohne weitere Fehler
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
braesident



Anmeldungsdatum: 15.04.2008
Beiträge: 189
Wohnort: Berlin

BeitragVerfasst am: 20.02.2013, 22:19    Titel: Antworten mit Zitat

das mit den Variablen ist gelöst dafür bekomm ich jetzt: cannot find -lOpenB3D

Code:
Command executed:
"C:\Programmieren\FreeBASIC\fbc.exe" -s gui "C:\Programmieren\FreeBASIC\Projekte\Test 3D\FBIDETEMP.bas"

Compiler output:
C:\Programmieren\FreeBASIC\bin\win32\ld.exe: cannot find -lOpenB3D

Results:
Compilation failed

System:
FBIde: 0.4.6
fbc:   FreeBASIC Compiler - Version 0.24.0 (08-19-2012) for win32
OS:    Windows NT 6.1 (build 7600)


liegt es vllt. an -s gui ?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 20.02.2013, 22:49    Titel: Antworten mit Zitat

Nein, das liegt daran das du die OpenB3D.dll nicht im Arbeitsverzeichnis hast...
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
braesident



Anmeldungsdatum: 15.04.2008
Beiträge: 189
Wohnort: Berlin

BeitragVerfasst am: 20.02.2013, 23:11    Titel: Antworten mit Zitat

also irgendwie bin ich jetzt verwirrt. Arbeitsverzeichnis ist doch das in welchem ich mein Code gespeichert habe oder nicht? bekomme jetzt die meldung kein zugriff.

Code:
Compiler output:
C:\Programmieren\FreeBASIC\bin\win32\ld.exe: reopening C:\Programmieren\FreeBASIC\Projekte\Test 3D\FBIDETEMP.exe: Permission denied
C:\Programmieren\FreeBASIC\bin\win32\ld.exe: final link failed: Permission denied
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 20.02.2013, 23:14    Titel: Antworten mit Zitat

Schau mal im Taskmanager unter "Prozesse", ob nicht noch eine FBIDETEMP.exe läuft. Wenn ja, "Prozess beenden". Falls das Programm aus irgendwelchen Gründen (evtl. falsches -s gui bei einer Konsolenanwendung) unsichtbar im Hintergrund läuft, kann die Datei nicht neu geschrieben werden.
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
St_W



Anmeldungsdatum: 22.07.2007
Beiträge: 956
Wohnort: Austria

BeitragVerfasst am: 20.02.2013, 23:18    Titel: Antworten mit Zitat

Permission denied Fehler kommen oft dann, wenn es zu dem betroffenen Image noch einen laufenden Prozess gibt.
Falls dies der Fall sein sollte einfach den Prozess im Task-Manager killen.
_________________
Aktuelle FreeBasic Builds, Projekte, Code-Snippets unter http://users.freebasic-portal.de/stw/
http://www.mv-lacken.at Musikverein Lacken (MV Lacken)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
braesident



Anmeldungsdatum: 15.04.2008
Beiträge: 189
Wohnort: Berlin

BeitragVerfasst am: 20.02.2013, 23:54    Titel: Antworten mit Zitat

leider nicht. im taskmanager kann ich nichts finden.

Falls es wichtig ist:

mein Code ist gespeichert in FreeBasic/Projekte/Test 3D/
hier hab ich jetzt auch die openB3D.dll gespeichert

die openb3d.bi und 2d.bi hab ich in inc/3d/ gepackt.

kann es sein das etwas nicht richtig aufgerufen wird ?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 21.02.2013, 01:03    Titel: Antworten mit Zitat

Wenn der RAM gerade mal wieder zugemüllt ist, probiere es doch einfach mal mit einem Neustart
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
braesident



Anmeldungsdatum: 15.04.2008
Beiträge: 189
Wohnort: Berlin

BeitragVerfasst am: 21.02.2013, 22:20    Titel: Antworten mit Zitat

ok das war das problem, danke.

Ich wollt mir das ganze mal ansehen da ich ein beschrifteten 3D ring in einem meiner programme anzeigen wollte.

jetzt hab ich 2 probleme

1. ich hab nach beispiel ein blauen zylinder erstellt, eine textur erstellt und diese auf den zylinder geklatscht. den code der textur hab ich so verstanden das ein grüner hintergrund erstellt wird und und der farbe des zylinders wird der schriftzug drauf gezeichnet.
Bei der Ausführung allerdings ist der zylinder schwarz mit blauem text.

2. in meinem program benutze ich ein durchsichtigen vollscreen, wie kann ich denn den hintergrund im 3D projekt dursichtig bekommen

Code:
#Include "3D/openb3d.bi"
#Define Render_OpenGL
#Include "FreeImage.bi"
#Include "3D/2d.bi"


Screenres 1024, 600, 32,, &h02 or &h10
Graphics3D 1024, 600, 32

Var light=CreateLight()
Var cam=CreateCamera()
Var Cylinder=CreateCylinder(32)
PositionEntity Cylinder, 0, 0, 12
EntityColor Cylinder, 0, 0, 255
  var tex1=CreateTexture(128,128,1,1)
  var img = imagecreate(128,128,32)
  Line img,(0,0)-(127,127),RGB(0,200,100),BF
  draw string img, (64-4*12,10),"POSTMAIL"
  BufferToTex tex1,img+32,1
  EntityTexture cylinder,tex1
 
'untergrund erstellen
var terrain = CreateTerrain(32)
  'create image of terrain
  var terimg=imagecreate(32,32,32)
    Line terimg,(0,0)-(31,31),RGB(255,100,0),BF
    Line terimg,(0,0)-(15,15),RGB(100,255,0),BF
    Line terimg,(16,16)-(31,31),RGB(100,255,0),BF
      'create texture from image
      var tertex=CreateTexture(32,32,1,1)
      BufferToTex tertex,terimg+32,1
        'untergrund die neue textur zuweisen
        EntityTexture terrain,tertex
       
       
         
          PositionEntity terrain,-15,-5,30

Do
    color , &hff00ff

    TurnEntity Cylinder, 0, -10, 0
    UpdateWorld
    RenderWorld
   
    Sleep 1
    ScreenSync
Loop Until Inkey=Chr(27)
ClearWorld
End
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 21.02.2013, 22:45    Titel: Antworten mit Zitat

Ob es in B3D eine 'fertige' Möglichkeit gibt einen Splashscreen zu erzeugen weiss ich nicht und als alternative fällt mir nur die Möglichkeit ein einen screenshot vom Desktop zu machen und als Textur auf den Screen zu setzen...

Was die Farben angeht kann ich leider auch nicht helfen, egal was ich eingebe, das Ding ist entweder Blau oder Schwarz... denke da ist ein fehler in der BufferToText function von B3D...

... nur ein weiterer Grund warum ich das Ding nie benutze...
Das Ding kann noch so tolle funktionen haben, wenns nicht funktioniert dann taugt es einfach nichts...
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
braesident



Anmeldungsdatum: 15.04.2008
Beiträge: 189
Wohnort: Berlin

BeitragVerfasst am: 21.02.2013, 22:54    Titel: Antworten mit Zitat

das ist ja schade. was würdest du machen um das umzusetzen was ich mir da gedacht hatte. Also benutzt du eine andere 3D Funktion als openB3D oder schreibst du das alles selbst?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 21.02.2013, 23:02    Titel: Antworten mit Zitat

Ich lese mich durch jedes OpenGL Tutorial das ich finden kann.
Leider sind die meisten ziemlich veraltet und neuere bauen leider viel zu oft auf Drittbibliotheken auf was mir auch selten weiter hilft.
Hab mir inzwischen das eine oder andere Buch gekauft.

Je nach komplexität des Vorhabens nicht ganz einfach, bin leider kein Mathe-Ass (Matritzen und Co.) auch muss ich vieles mindestens 10mal lesen und probieren bis ichs überhaupt verstehe... darüber hinaus ist (fast) alles in Englisch was die Sache auch nicht unbedingt einfacher macht.

Wenn es wirklich nur sowas einfaches sein soll wie der Zylinder mit Textur auf einem (fake)transparent-Splashscreen, sollte es allerdings nicht sehr schwer werden...
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
ichhalt



Anmeldungsdatum: 26.01.2013
Beiträge: 39

BeitragVerfasst am: 23.02.2013, 15:06    Titel: Antworten mit Zitat

ich kann die blöde .a von openb3d hinpacken wo ich will er findet sie einfach nicht
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
St_W



Anmeldungsdatum: 22.07.2007
Beiträge: 956
Wohnort: Austria

BeitragVerfasst am: 23.02.2013, 15:13    Titel: Antworten mit Zitat

Du kannst fbc mit dem Parameter "-p" anweisen, einen eigenen Pfad dem Suchpfad des Linkers hinzuzufügen: z.B.
Code:
fbc myProg.bas -p "./lib"

Beachte, dass du, wenn du z.B. #inclib "openb3d" im Quellcode angibst nach einer "libopenb3d.dll.a" bzw. "libopenb3d.a" gesucht wird - du also die Dateierweiterung nicht angeben musst.
Desweiteren wär natürlich die genaue Fehlermeldung hilfreich, die ld (oder etwa schon der fbc?) ausgibt. Den ld Aufruf inkl. Parameter siehst du übrigens am Besten, wenn du den fbc mit Parameter "-v" aufrufst (verbose).

edit: name korrigiert
_________________
Aktuelle FreeBasic Builds, Projekte, Code-Snippets unter http://users.freebasic-portal.de/stw/
http://www.mv-lacken.at Musikverein Lacken (MV Lacken)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite 1, 2  Weiter
Seite 1 von 2

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz