MP3D Engine Alpha 33

Applications, Games, Tools, User libs and useful stuff coded in PureBasic
mpz
Enthusiast
Enthusiast
Posts: 497
Joined: Sat Oct 11, 2008 9:07 pm
Location: Germany, Berlin > member German forum

Re: MP3D Engine Alpha 31

Post by mpz »

Hi Psychophanta,

the

x86
http://www.flasharts.de/mpz/x86/MP3D_Library

file is the newest. Today in the evening i will actualize both files with the newest version for testeing.

I will make in the next time a new installer. My problem is time for programming in the the last month, but i love my baby (mp3d) and will work on it...

Greetings Michael
Working on - MP3D Library - PB 5.73 version ready for download
applePi
Addict
Addict
Posts: 1404
Joined: Sun Jun 25, 2006 7:28 pm

Re: MP3D Engine Alpha 31

Post by applePi »

mpz said: P.S perhaps i find a way to save the primitives as directx mesh. This could be a nice feature
http://www.purebasic.fr/english/viewtop ... 70#p404213
Hi Michael
i imagine this either saving the mesh as pure points coordinates or somehow connecting the outerside of the points cloud by triangles. but this seems a very difficult task. the first one is easier because there are already programs like MeshLab which can open such point clouds data
here is a way i have done using as guidance the instructions in http://lcni.uoregon.edu/~dow/Projects/B ... _mesh.html
first make a points cloud by just saving the points coorditaes:
OpenFile(1, "dataxyz.asc")
.... etc
MP_SetPrimitives(Entity, i, x, y, z, MP_ARGB(0,red,green,blue))
a$=StrF(x)+ "," +StrF(y)+"," +StrF(z)
WriteStringN(1, a$)

Code: Select all

Enumeration
   #MESH
   #LIGHT
   #CAMERA_ONE
   #BUTTON
   #mainwin
 EndEnumeration
  
Global xres=640, yres=480
MP_Graphics3D (xres,yres,0,3)
SetWindowTitle(0, "just exit and the cloud will be saves to dataxyz.asc ")
camera=MP_CreateCamera()

light=MP_CreateLight(2)
MP_LightSetColor (light, RGB(255,255,255))

MP_PositionCamera(camera, 0, 5, 10)
MP_CameraLookAt(camera,0,0,0)

MP_PositionEntity(light, 0, 10, 20)
MP_EntityLookAt(light,0,0,0)


Global Entity= MP_CreatePrimitives (1000020, 1)   
  
Global.f dx, dy, x, y, z
Global wd, ht, i, count, n, iter
Global.f w, leng, tx, ty, tz, tem
Global.f cr, ci, cj, ck, wk, inc, distance
Global mand, zval
Global.f angle
Define.f red, green, blue
;zval = 1 shows entire set
;zval = 0 cuts set in half
;zval = 0 is an interesting effect
wd = 500
ht = 500
;defines the shape of the Julia Set
cr = -0.200
ci = 0.800
cj = 0.000
ck = 0.000
wk = 0.000
;mand = 0 is Julia Set
;mand = 1 is Mandelbrot 3D
mand = 1
;zval = 1 shows entire set
;zval = 0 cuts set in half
;zval = 0 is an interesting effect
zval = 1
iter = 5
inc = 5 
;#quat = 1
zval = 1
iter = 5
inc = 5 
Procedure.f RandF(Min.f, Max.f, Resolution.i = 10000)
  ProcedureReturn (Min + (Max - Min) * Random(Resolution) / Resolution)
EndProcedure

Quit.b = #False
rot.l=1 :stopFlag = 1
xs.f = 0.3:ys.f = 0.3:zs.f = 0.3
x.f: y.f :z.f: x0.f: y0.f=1 :z0.f
rotx.f:roty.f=1:rotz.f :rotx0.f: roty0.f: rotz0.f
up.f = 2.2: depth.f=0

;==============================================================

;
Procedure.f calcleng( x.f,  y.f,  z.f)
    w.f: kr.f: ki.f: kj.f: kk.f
    w = wk
    n = 0
    If mand = 1  ;full Mandelbrot set
        kr = x
        ki = y
        kj = z
        kk = 0
    Else                ;else draw Julia Set
        kr = cr
        ki = ci
        kj = cj
        kk = ck
    EndIf
    
    While n < iter
        tem = x+x
        x = x*x-y*y-z*z-w*w+kr
        y = tem*y + ki
        z = tem*z + kj
        w = tem*w + kk
        
        n+1
        distance = x*x+y*y+z*z+w*w
        
        If distance > 4 
          n = iter
        EndIf
        
    Wend
        
    ;Return distance
    ProcedureReturn distance
  
EndProcedure

OpenFile(1, "dataxyz.asc")

zz.f
    foo.l
    iterations = 100000
    count = 0
    
    If zval = 0
        zz = 2.0
    Else
        zz = 4.0
    EndIf
      
      For foo = 0 To iterations
          ;x.f = RandF(0, 1)
          ;y.f = RandF(0, 1)
          x.f = RandF(-2, 2)
          y.f = RandF(-2, 2)
          
          z.f = zz*RandF(0, 1) -2.0
          
          ;calls the quaternion calculation
          leng.f = calcleng(x,y,z)
          
          If leng < 4 
              red = (x+Cos(15*leng))*255
              green = (y+Sin(1-leng)*Cos(5*leng))*255
              blue = (z+Sin(0.75*leng))*255
              If red < 0 : red = 0 : EndIf
              If green < 0 : green = 0 : EndIf
              If blue < 0 : blue = 0 : EndIf
              If red > 255 : red = red-255 : EndIf
              If green > 255 : green = green-255 : EndIf
              If blue > 255 : blue = blue-255 : EndIf
                            
              i+1
              
              MP_SetPrimitives(Entity, i,  x, y, z,  MP_ARGB(0,red,green,blue))
              a$=StrF(x)+ "," +StrF(y)+"," +StrF(z)
              WriteStringN(1, a$)
                          
                           
          EndIf
          
        Next 

;==============================================================
MP_PositionCamera(camera, 0, 0, 8)
MP_CameraLookAt(camera,0,0,0)
MP_PositionEntity(light, 0 , 0, 10)
MP_EntityLookAt(light,0,0,0)

xx.f=0 :zz.f=0
While Not MP_KeyDown(#PB_Key_Escape) And Not WindowEvent() = #PB_Event_CloseWindow
  
    MP_PositionEntity(Entity, xx, 0, zz)
    MP_TurnEntity(Entity,0,1,0) 
   
  MP_RenderWorld()
   
  MP_Flip ()

Wend
CloseFile(1) 
now open MeshLab from http://meshlab.sourceforge.net/
and open the saved text file dataxyz.asc
Image
from the menu click Filters -
---------------------------remeshing, simplification and reconstruction
---------------------------surface reconstruction: ball pivoting
after finish click
---------------------------Render
------------------------------Render mode
------------------------------Flat Lines

the mesh will be changed to this:
Image

now click file - export as, choose "obj", such as mandel.obj
now i have opened milkshape and importing the mandel.obj and exporting it to directX(JT) __found at the end of export menu list in milkshape__ , in fact this is the only format wich works with MP3D in this case of bizarre mesh, it does not work with normal directx8 nor 3ds nor b3d.
now we will display the strange model with the following program with physics, i have used MP_Physik_EntityAddForce.pb from the folder
C:\PureBasic\MP3D Demos\3DPhysik
so save the program to it

Code: Select all

MP_Graphics3DWindow(0, 0, 800, 600, " Push Entity with left mouse", 0)

light0 = MP_CreateLight(1)
MP_PositionEntity(light0, 0, 128, 0)
MP_AmbientSetLight(RGB(186,235,254)) 
;MP_AmbientSetLight(RGB(255,255,255))
cam0 = MP_CreateCamera()
MP_CameraSetRange(cam0, 2, 2024)
MP_PositionCamera(cam0, -32, 64, -152)
MP_CameraLookAt(cam0, 0, 0, 0)
MP_PhysicInit()

tex0 = MP_CatchTexture( ?MyData, ?MyData2 - ?MyData) 
tex1 = MP_CatchTexture(?MyData2, ?MyData3 - ?MyData2)

;################ plate ################
plate = MP_CreateRectangle(256, 1, 256) ; plate kann natürlich auch ein x-beliebiges Mesh sein
MP_ScaleMesh( plate ,0.6,0.6,0.6)
MP_EntitySetTexture(plate, tex0)
MP_EntityPhysicBody(plate, 1, 0)
;#############################################

mandel = MP_LoadMesh("mandelJT.x")
MP_ResizeMesh(mandel,30,30,30)
MP_EntitySetTexture(mandel, tex1)
MP_PositionMesh(mandel, 0,50,-22)

MP_EntityPhysicBody(mandel,4, 10)

  
While Not MP_KeyDown(#PB_Key_Escape) And Not WindowEvent() = #PB_Event_CloseWindow

  If MP_MouseButtonDown(0) ; Linke Maustaste gedrückt?
    
    Meshfound = MP_PickCamera (cam0,WindowMouseX(0),WindowMouseY(0))
    If Meshfound 
      MP_EntityAddImpulse(Meshfound,0,0,10,MP_EntityGetX (Meshfound),MP_EntityGetY (Meshfound),MP_EntityGetZ (Meshfound)) 
    EndIf
    
  EndIf
  ;MP_EntityResetPhysic(TempMesh())   
  If MP_KeyDown(#PB_Key_Space)=1
          
  EndIf
    
  MP_DrawText (1,1,"FPS = "+Str(MP_FPS()))
   
  MP_PhysicUpdate()  
  
  MP_RenderWorld()
  
  MP_Flip()  
Wend

MP_PhysicEnd()


DataSection
  MyData:
     IncludeBinary "detail3.bmp"
  MyData2:
     IncludeBinary "crate01.jpg"
  MyData3:
EndDataSection
i think it is beautiful to have a model resembling that rolling bulky dried grass like that we see in the client eastwood cowboy movies. also we may send it to a 3D printer and will be a great plastic model.

Image

the other request is it possible to have dynamic concave mesh, such as a torus which we can push its hole over a cylinder, or the gears etc ?
for the users who don't want to run the codes here is the files including the "mandel.obj" and "mandelJT.x" .
PS: the users may need the newest version on mp3d 32, i hope Michael will make a new installer since the current situation makes new users don't know what to do.
http://www.mediafire.com/?iqiz84iu09auquj

PS: i have found that the mesh made by Panda Directx Exporter x86 for 3ds max 9 can be displayed by the above viewer code with MP3D. http://www.andytather.co.uk/panda/direc ... loads.aspx

here is the mandel.x produced by this exporter
http://www.mediafire.com/?0ua97llfqycbncx
Last edited by applePi on Thu May 23, 2013 5:44 pm, edited 1 time in total.
User_Russian
Addict
Addict
Posts: 1518
Joined: Wed Nov 12, 2008 5:01 pm
Location: Russia

Re: MP3D Engine Alpha 31

Post by User_Russian »

This library leads to crash pbcompiler.exe
PB 5.11 x86.
vladimir
New User
New User
Posts: 7
Joined: Thu Sep 20, 2012 4:11 pm
Location: russia

Re: MP3D Engine Alpha 31

Post by vladimir »

User_Russian wrote:
This library leads to crash pbcompiler.exe
PB 5.11 x86.
у меня все отлично работает по пробуй загрузить этот архив, он у меня стоит на версии 5.11 x86
vladimir
New User
New User
Posts: 7
Joined: Thu Sep 20, 2012 4:11 pm
Location: russia

Re: MP3D Engine Alpha 31

Post by vladimir »

mpz hello! I have a problem in TileEngine, I created a map of 10x15 (Tile size 32px) 320x480 game window.
My Code

Code: Select all

EP_Init2dMap()

MP_Graphics3D(800,600,32,2)
MP_AmbientSetLight(RGB(63, 58, 60))
EP_SetGFXPath("gfx")
EP_LoadMap("map00[Converted].Map")


While Not MP_KeyHit(#PB_Key_Escape) And Not WindowEvent() = #PB_Event_CloseWindow
  EP_SetMapArea(0,0,10,15)
 
  EP_DrawMap()
  
  MP_DrawText(10,10,Str(EP_GetMapSizeX()))
  MP_RenderWorld()
  MP_Flip()
  
Wend
Why not see the last tile?
screen
size of the map is correct, 10x15.
code tmx map:

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<map version="1.0" orientation="orthogonal" width="10" height="15" tilewidth="32" tileheight="32">
 <tileset firstgid="1" name="tile1" tilewidth="32" tileheight="32">
  <image source="gfx/tile1.png" width="96" height="32"/>
 </tileset>
 <layer name="ggg" width="10" height="15">
  <data encoding="csv">
2,2,2,2,2,2,2,2,2,2,
2,3,0,0,0,0,0,0,3,2,
2,0,0,0,0,0,0,0,0,2,
2,0,0,0,0,0,0,0,0,2,
2,0,0,0,0,0,0,0,0,2,
2,0,0,0,0,0,0,0,0,2,
2,0,0,0,3,3,0,0,0,2,
2,0,0,0,3,3,0,0,0,2,
2,0,0,0,0,0,0,0,0,2,
2,0,0,0,0,0,0,0,0,2,
2,0,0,1,0,0,0,0,0,2,
2,0,0,0,0,0,0,0,0,2,
2,0,0,0,0,0,0,0,0,2,
2,3,0,0,0,0,0,0,3,2,
2,2,2,2,2,2,2,2,2,2
</data>
 </layer>
</map>
tileset
I'm sorry for my english, it's Google translite
Last edited by vladimir on Fri May 24, 2013 6:42 pm, edited 1 time in total.
User_Russian
Addict
Addict
Posts: 1518
Joined: Wed Nov 12, 2008 5:01 pm
Location: Russia

Re: MP3D Engine Alpha 31

Post by User_Russian »

vladimir wrote:у меня все отлично работает по пробуй загрузить этот архив, он у меня стоит на версии 5.11 x86
Компилятор падает из-за этой версии библиотеки. http://www.purebasic.fr/english/viewtop ... 36#p413367
А с той что в архиве (он похоже что из первого поста), работает нормально.
vladimir
New User
New User
Posts: 7
Joined: Thu Sep 20, 2012 4:11 pm
Location: russia

Re: MP3D Engine Alpha 31

Post by vladimir »

User_Russian wrote: А с той что в архиве (он похоже что из первого поста), работает нормально.
ну да это он и есть, просто давно его храню на облочном сервисе гугла.
хм.. так то то что я дал архив, есть в первом посте)) вторая ссылка, у меня она работает нормально. вот http://www.flasharts.de/mpz/mp3d_31_x86.zip
mpz
Enthusiast
Enthusiast
Posts: 497
Joined: Sat Oct 11, 2008 9:07 pm
Location: Germany, Berlin > member German forum

Re: MP3D Engine Alpha 31

Post by mpz »

Hello to all,

@apple Pi, i love you great 3d ideas and your idea to save the file as asc. What do you think about a own save and load format for primitives? Do you need this?

@User_Russian nice to see you, i like you great work "USB HID Library", i like PIC microcontroller to make you own USB HID I/O device

I think you have a problem with the download of the lib file. Please use for download the zip file http://www.flasharts.de/mpz/x86/MP3D_Library.zip

@vladimir Nice to see you. I found a little bug in the Tiled_Convert.pb file. Her coems the correct code, i hope this helps

Code: Select all

;******************************************************************************
;******************************************************************************
;***                                                                        ***
;***   Konverter für Tiled Map by Epyx                                      ***
;***                                                                        ***
;***   Only Tile values will be converted all Tile flags set to 1           ***
;***   empty fields set the flags to 0                                      ***
;***                                                                        ***
;***                                                                        ***
;***                                                                        ***
;***   PureBasic 4.51 and MP3d Engine a30                                   ***
;***                                                                        ***
;***                                                                        ***
;***   Tiled MapEditor => http://www.mapeditor.org/                         ***
;***                                                                        ***
;***   little bug fixing MPaulwitz                                                                       ***
;***                                                                        ***
;******************************************************************************
;******************************************************************************


EP_Init2dMap()

  Pattern$ = "Tiled Mapfile (*.tmx)|*.tmx|all files (*.*)|*.*"
  File$ = OpenFileRequester("Please load the Map.tmx file", "", Pattern$, 0)
  
  NC = Len(GetExtensionPart(File$))+1 : FL = Len(File$)
  NFile$ = Left(File$, (FL-NC)) +"[Converted].Map"
  
  NewList Textline.s()
  NewList Tilename.s()
  
If ReadFile(0, File$)
     
  While Eof(0) = 0
    AddElement(Textline())
    Textline() = ReadString(0)   
  Wend
   
  CloseFile(0)
    
    Map_Width      = 0
    Map_Height     = 0
    Map_Tilesize   = 0    
    DataEncoding.s = ""
    
    ToFind$ = "orientation="+Chr(34)+"orthogonal"+Chr(34)
    
    ForEach Textline()
      
      X = FindString(Textline(),ToFind$,1) 
      If X <> 0        
         ;Kartenbreite auslesen
         TheWidth = FindString(Textline(),"width="+Chr(34),(X+24))
         If TheWidth <> 0 : Width_ST = (TheWidth+7) : Width_ND = FindString(Textline(),Chr(34),Width_ST)      
         Map_Width = Val(Mid(Textline(),Width_ST,(Width_ND-Width_ST)))
         EndIf
         
         ;Kartenhöhe auslesen
         TheHeight = FindString(Textline(),"height="+Chr(34), Width_ND)
         If TheHeight <> 0 : Height_ST = (TheHeight+8): Height_ND = FindString(Textline(),Chr(34),Height_ST)  
         Map_Height = Val(Mid(Textline(),Height_ST,(Height_ND-Height_ST)))
         EndIf
         
         ;Tilegröße auslesen; nur X size
         TheTile = FindString(Textline(),"tilewidth="+Chr(34), Height_ND)
         If TheTile <> 0 : Tile_ST = (TheTile+11): Tile_ND = FindString(Textline(),Chr(34),Tile_ST)  
         Map_Tilesize = Val(Mid(Textline(),Tile_ST,(Tile_ND-Tile_ST)))
         EndIf         
      EndIf
      
      ; Die Tilegrafik Namen auslesen
      TileLine = FindString(Textline(),"<image source="+Chr(34), 1)
      If TileLine <> 0 : TileLine_ST = (TileLine + 15) : TileLine_ND = FindString(Textline(),Chr(34),TileLine_ST) 
        AddElement(Tilename())
        Tilename() = Mid(Textline(),TileLine_ST,(TileLine_ND-TileLine_ST)) 
      EndIf
      
      ; Kodierung der Map Daten auslesen
      DataFormat = FindString(Textline(),"<data encoding="+Chr(34), 1)
      If DataFormat <> 0 : Data_ST = (DataFormat + 16) : Data_ND = FindString(Textline(),Chr(34),Data_ST) 
        DataEncoding.s = Mid(Textline(),Data_ST,(Data_ND-Data_ST)) 
        If DataEncoding.s = "csv" : NextElement(Textline()) : TileItemLine = 0 
                    
        ; Irgendwas stimmt nicht, dann alles abbrechen  
        If Map_Width=0 Or Map_Height=0 Or Map_Tilesize=0 Or DataEncoding.s <> "csv"
          Result$ = File$ + Chr(13)+Chr(13)      
          Result$ = Result$ + "witdh = "+Str(Map_Width) + "    height = "+ Str(Map_Height) + Chr(13)
          Result$ = Result$ + "Tiles = "+Str(Map_Tilesize) + "    Encode = "+ DataEncoding.s + Chr(13)
          MessageRequester("Error occured","Cant convert this File"+Chr(13)+Result$)
          End       
        EndIf
        
        ;Neue Map öffnen
         EP_CreateMap(Map_Width, Map_Height, Map_Tilesize)
 
         ForEach Tilename()
             EP_SetTileGFX(Tilename()) ; Den Original Tile Pfad in die Map übernehmen (Achtung evtl. neuen Pfad im Programm angeben) 
         Next         
          
        EndIf  
      EndIf

      If DataEncoding.s = "csv"
         Commas = CountString(Textline(),",")
         If Commas > 0  
           For t = 1 To Commas
             Tile = Val(StringField(Textline(),t,",")) 
             Tile - 1

             EP_SetMapTile((t-1), TileItemLine, Tile) ; Tja the Tile himself ^^
             If Tile <> -1 ; This Tile is used
                EP_SetMapFlag((t-1), TileItemLine,  1)  ; default Tile Flag
              Else
                EP_SetMapFlag((t-1), TileItemLine, -1)  ; Empty Tile
             EndIf   
             EP_SetMapAnim((t-1), TileItemLine, -1)  ; Kein Animations Tile
             EP_SetMapTrans((t-1),TileItemLine,  0)  ; Keine Transparenz bei diesem Tile
             EP_SetMapItem((t-1), TileItemLine, -1)  ; Kein Item-Tile über diesem Tile
             
           Next t      
           
             ;- little Bugfixing start
             t = Commas + 1
           
             Tile = Val(StringField(Textline(),t,",")) 
             Tile - 1

             EP_SetMapTile((t-1), TileItemLine, Tile) ; Tja the Tile himself ^^
             If Tile <> -1 ; This Tile is used
                EP_SetMapFlag((t-1), TileItemLine,  1)  ; default Tile Flag
              Else
                EP_SetMapFlag((t-1), TileItemLine, -1)  ; Empty Tile
             EndIf   
             EP_SetMapAnim((t-1), TileItemLine, -1)  ; Kein Animations Tile
             EP_SetMapTrans((t-1),TileItemLine,  0)  ; Keine Transparenz bei diesem Tile
             EP_SetMapItem((t-1), TileItemLine, -1)  ; Kein Item-Tile über diesem Tile
             ;- little Bugfixing end

         EndIf
        
         TileItemLine + 1   
        
      EndIf
      
    Next
    
    EP_SaveMap(NFile$)
    
    MessageRequester("Erledigt","the converted map was saved :)") ; ready
    
Else 
   MessageRequester("Fehler","Cant open file") ; Error
EndIf

End
Greetings Michael
Working on - MP3D Library - PB 5.73 version ready for download
applePi
Addict
Addict
Posts: 1404
Joined: Sun Jun 25, 2006 7:28 pm

Re: MP3D Engine Alpha 31

Post by applePi »

Hi Michael
an own format to save and load primitives is a good idea if it can save also the primitives colors. so the primitive creations can be saved for usage in future projects.
regards
IdeasVacuum
Always Here
Always Here
Posts: 6426
Joined: Fri Oct 23, 2009 2:33 am
Location: Wales, UK
Contact:

Re: MP3D Engine Alpha 31

Post by IdeasVacuum »

..... add textures to that too - everything that describes a model in a single file, option to save as binary or plain text (plain text is handy because if you need a collection of similar objects, being able to edit a file to create a new object is very efficient).
IdeasVacuum
If it sounds simple, you have not grasped the complexity.
Olby
Enthusiast
Enthusiast
Posts: 461
Joined: Mon Jan 12, 2009 10:33 am
Contact:

Re: MP3D Engine Alpha 31

Post by Olby »

Hi mpz,

Is it possible to load meshes and textures in a separate thread while rendering the scene in the main thread. In other words is MP3D threadsafe ? Oh and by the way could you please post a link to most recent version of it as there seem to be quite a few link for older versions. Thanks for this great library, you're a STAR!!
Intel Core i7 Quad 2.3 Ghz, 8GB RAM, GeForce GT 630M 2GB, Windows 10 (x64)
mpz
Enthusiast
Enthusiast
Posts: 497
Joined: Sat Oct 11, 2008 9:07 pm
Location: Germany, Berlin > member German forum

Re: MP3D Engine Alpha 31

Post by mpz »

Hello Olby,

on the first side of this discussion you find the "Threadsafe only lib for x86" too, Please replace the original MP3D_Library lib manually
http://www.flasharts.de/mpz/Threadsafe/MP3D_Library

I don't have tested it with loading etc in a separated thread, but i hope you can do it and told us about this :lol:

I go to holiday in 3 weeks and will annouced the new version mp_32 before. I will make a Threadsafe lib with this version to...

P.S. Little update, I have create 3 new load, catch and save Primitives commands:

56) new command: MP_LoadPrimitives (File.s) ; Load a Primitives as file.
57) new command: MP_CatchPrimitives (Memory , SizeOfMemory ) ; Load a Primitives from memory
58) new command: MP_SavePrimitives (Entity, File.s) ; Save a Primitives as file


Greetings Michael
Working on - MP3D Library - PB 5.73 version ready for download
User avatar
leonhardt
Enthusiast
Enthusiast
Posts: 220
Joined: Wed Dec 23, 2009 3:26 pm

Re: MP3D Engine Alpha 31

Post by leonhardt »

mpz wrote:Hello Olby,

on the first side of this discussion you find the "Threadsafe only lib for x86" too, Please replace the original MP3D_Library lib manually
http://www.flasharts.de/mpz/Threadsafe/MP3D_Library

I don't have tested it with loading etc in a separated thread, but i hope you can do it and told us about this :lol:

I go to holiday in 3 weeks and will annouced the new version mp_32 before. I will make a Threadsafe lib with this version to...

P.S. Little update, I have create 3 new load, catch and save Primitives commands:

56) new command: MP_LoadPrimitives (File.s) ; Load a Primitives as file.
57) new command: MP_CatchPrimitives (Memory , SizeOfMemory ) ; Load a Primitives from memory
58) new command: MP_SavePrimitives (Entity, File.s) ; Save a Primitives as file


Greetings Michael
Glad to hear that new version will be announced! BTW,it would be better if some old bugs could be fixed(I've posted those posts on the dedicated forum)
poor English...

PureBasic & Delphi & VBA
User avatar
AndyLy
Enthusiast
Enthusiast
Posts: 228
Joined: Tue Jan 04, 2011 11:50 am
Location: GRI

Re: MP3D Engine Alpha 31

Post by AndyLy »

Oh! Activity in the thread! And MPZ here! "He's alive! He's Alive!" )
I'm going back to the development my game, after break.
MPZ, maybe you will finish my old requests?
'Happiness for everybody, free, and no one will go away unsatisfied!'
SMsF town: http://www.youtube.com/watch?v=g6RRKYf_Pd0
SMf locations module (Ogre). Game video: http://www.youtube.com/watch?v=ZlhBgPJhAxI
mpz
Enthusiast
Enthusiast
Posts: 497
Joined: Sat Oct 11, 2008 9:07 pm
Location: Germany, Berlin > member German forum

Re: MP3D Engine Alpha 31

Post by mpz »

Hi AndyLy,

what is the importants functions for you to need for now? If it is possible i will do it befor you go to holiday...

Greetings Michael
Working on - MP3D Library - PB 5.73 version ready for download
Post Reply