FreeBrush funktioniert nicht

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

hectic

Sieger des IS Talentwettbewerb 2006

Betreff: FreeBrush funktioniert nicht

BeitragSa, Jul 07, 2007 19:07
Antworten mit Zitat
Benutzer-Profile anzeigen
ql:FreeBrush funktioniert bei mir irgendwie nicht. Vielleicht mache ich was falsch oder so. Hier so ein Beispiel:

Lade ich ein Brush mit
Code: [AUSKLAPPEN]
  draw_type\draw_brush=LoadBrush(f_draw_file,f_draw_mode,f_draw_usize,f_draw_vsize)
  draw_type\draw_face=CreateSurface(draw_mesh,draw_type\draw_brush)

und möchte ihn wieder freigeben, so funktioniert folgendes nicht
Code: [AUSKLAPPEN]
   ClearSurface draw_type\draw_face
   FreeBrush draw_type\draw_brush

Es kommt zwar keine Fehlermeldung, aber der Grafikspeicher (ermitelt mit ql:AvailVidMem()) zeigt keine Änderung. Nun dachte ich, dass die ''Reservierung'' für diesen freigegeben wird, was aber bei mir nicht funktioniert. Ich kann zwar immer weiter 16MB große Texturen laden, aber es fängt dann gewaltig an zu ruckeln. Auch dann wenn ''nichts'' mehr im Speicher sein sollte, ruckelt auch nur ein TurnEntity cube...
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D

Arrangemonk

BeitragSa, Jul 07, 2007 19:55
Antworten mit Zitat
Benutzer-Profile anzeigen
du nimmst schon b3ds für brushs her, oder?

Code: [AUSKLAPPEN]

Function LoadBrush(file$,flags=0,u_scale=1,v_scale=1)
p=Instr(file,".")
ext$=Lower(Right(file,Len(file)-p))
Select ext
   Case "jpg","jpeg","bmp","png","tga"
      t=LoadTexture(file,flags)
      If t
         ScaleTexture t,u_scale,v_scale
         b=CreateBrush()
         BrushTexture b,t
         FreeTexture t
         Return b
         EndIf      
   Case "b3d"
      m=LoadMesh(file)
      If m
         If CountSurfaces(m)
            surf=GetSurface(m,1)
            b=GetSurfaceBrush(surf)
            FreeEntity m
            Return b
            EndIf
         EndIf      
   End Select
End Function


ich nimm dann für loadbrush das
villeicht funzt dein freebrush mit dem
ingeneur

hectic

Sieger des IS Talentwettbewerb 2006

BeitragSa, Jul 07, 2007 20:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich glaube zwar nicht das zwischen CreateBrush und LoadBrush diesbezüglich ein Unterschied ist, aber ich werde es auf jeden Fall mal ausprobieren. Im moment habe ich grad Besuch, so kann ich garnicht so schnell zum testen kommen. Danke für den Vorschlag.

Was meinst du mit b3ds? Ich lade ein Brush und ''bepinsel'' damit mein selbst erstelltes Mesh (CreateMesh, AddVertex, AddTriangle etc... für Draw3D eben)
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D

Arrangemonk

BeitragSa, Jul 07, 2007 22:30
Antworten mit Zitat
Benutzer-Profile anzeigen
naja, in blender und 3dsmax, kann man die materialeigenschaften aufm materialeditor in die b3d datei speichern, brauchst dazu nur ne plane hintuhen
und diese materialeigenschaften kannst du mit dem code aus der b3d holen
ingeneur

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group