Page 2 of 2 FirstFirst 12
Results 11 to 13 of 13

Thread: Phoenix 2013 - Now with tutorials!

  1. #11
    Quote Originally Posted by gcarreno View Post
    Humm, now for the "...as well as Free Pascal/Lazarus should work."

    I'm, in no category, a records with methods knowledgeable fellow, but I'm trying to compile phoenix_2013-10-15 with Ubuntu 14.04 64b, Lazarus 1.2.2 and FCP 2.6.4 and it's tripping a "function header does not match previous declaration..." error on TMatrix3f.Zero, TMatrix3f.Identity, TMatrix4f.Zero, TMatrix4f.Identity, TMatrix4f.Multiply and it stopped there after 5 errors.

    So, what is needed to have records withs methods playing nice on FPC?

    Many thanks in advance!

    Cheers,
    Gus
    All the demos compiles and runs using Lazarus 1.2.4 with FPC 2.6.4 on my windows machine (although with some warnings), the {$mode delphi} compiler define is quite important though, but that is included in phxConfig.inc.

    Is it the demos/tutorials that gives the error or is it a custom application?

    Quote Originally Posted by gcarreno View Post
    Hey Andreaz,

    Looking at the Demos/_Binary folder, there are quite a few .dll files there.

    It would be nice to have a section on the documentation about the packages that need to be installed.

    OpenGL is the most obvious, but looks like FreeImage, SDL(_image), glfw, libpng and Lua are also some pre requisites for the entirity of the Engine to operate.

    I can provide Ubuntu/Debian packages how to, but will have to get over the error I've reported before (BTW, went on Google Code issue tracker and added it, #144).

    Any help is greatly thanked, in advance ;-)

    Cheers,
    Gus
    All the dll files are all optional, they are included depending on what plugins you're using.

    If you add phxGraphics_FreeImage to the uses class FreeImage.dll is used for texture loading, theese are the supported graphics librarys. If you only use phoenix images you don't need any of the following.

    phxGraphics_FreeImage - FreeImage.dll
    phxGraphics_Vampyre - Vampyre Imaging Lib (In search path)
    phxGraphics_SDL - SDL_Image.dll
    phxGraphics_DDS - native DDS support (No external requirement)

    For the rendering these are the variants:

    phxOpenGL_SDL - OpenGL32.dll + SDL.dll
    phxOpenGL_GLFW - OpenGL32.dll + GLFW.dll
    phxDraw - OpenGL32.dll + VCL

    phxDirect3D9_SDL - D3D9 + SDL.dll (Experimental).

    You can create your own version of the above by extending the TPHXOpenGL_Renderer class to add a own window framework.

    You might also require lua if you use the scripting:

    phxScripting - Lua51.dll
    Amnoxx

    Oh, and this code appears to be an approximate replacement for return(random() & 0x01);

    Phoenix Wiki
    http://www.phoenixlib.net/

    Phoenix Forum
    http://www.pascalgamedevelopment.com/viewforum.php?f=71

  2. #12
    Quote Originally Posted by Andreaz View Post
    All the demos compiles and runs using Lazarus 1.2.4 with FPC 2.6.4 on my windows machine (although with some warnings), the {$mode delphi} compiler define is quite important though, but that is included in phxConfig.inc.

    Is it the demos/tutorials that gives the error or is it a custom application?
    Because it's in phxTypes.pas, it really doesn't matter, but to be specific, I've tried to compile demo 00_Template and 01_Canvas.
    Now, because you mention {$mode delphi} and phxConfig.inc, I went back and made sure my Lazarus was finding phxConfig.inc.
    I had no issues with that because, as is, all is fine. Since you have ../../Source on the path, all's good.
    So I'm now baffled on how you can compile phxTypes.pas on a windows machine and I'm stuck on a Linux machine.
    It really doesn't make sense to me, since the error reported is an interface to implementation mismatch.
    I've read somewhere that Delphi and FPC record implementations differ a bit, but this is not the case. You are using the same, or close, versions I'm using and getting awkward different results.


    Quote Originally Posted by Andreaz View Post
    All the dll files are all optional, they are included depending on what plugins you're using. ...
    Thank you so much for this, it makes perfect sense now
    Since I'm on Linux, some don't apply, and the ones that do, I can quickly find the libs.

  3. #13
    Quote Originally Posted by gcarreno View Post
    Because it's in phxTypes.pas, it really doesn't matter, but to be specific, I've tried to compile demo 00_Template and 01_Canvas.
    Now, because you mention {$mode delphi} and phxConfig.inc, I went back and made sure my Lazarus was finding phxConfig.inc.
    I had no issues with that because, as is, all is fine. Since you have ../../Source on the path, all's good.
    So I'm now baffled on how you can compile phxTypes.pas on a windows machine and I'm stuck on a Linux machine.
    It really doesn't make sense to me, since the error reported is an interface to implementation mismatch.
    I've read somewhere that Delphi and FPC record implementations differ a bit, but this is not the case. You are using the same, or close, versions I'm using and getting awkward different results.
    This is strange indeed, i downloaded the version from the homepage just to be shure i hadnt modified it, compiled out of the box. It might have to do with the static directive on the functions, it should not be needed to add it to the implementation but that might be the solution. I will check into it.

    Quote Originally Posted by gcarreno View Post
    Thank you so much for this, it makes perfect sense now
    Since I'm on Linux, some don't apply, and the ones that do, I can quickly find the libs.
    Any time.
    Amnoxx

    Oh, and this code appears to be an approximate replacement for return(random() & 0x01);

    Phoenix Wiki
    http://www.phoenixlib.net/

    Phoenix Forum
    http://www.pascalgamedevelopment.com/viewforum.php?f=71

Page 2 of 2 FirstFirst 12

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •