Page 3 of 6 FirstFirst 12345 ... LastLast
Results 21 to 30 of 53

Thread: Luna Game Library - Simple & Elegant Game Programming

  1. #21
    Yea, it will fail without a GPU. Everything rendered is hardware accelerated. Also, I do not have robust error checking in also at the moment. I've been trying to get the API finalized first. Then, in a future build, I will do a sweep and properly handle error conditions and gracefully return if possible. I was having some floating point issues with physics and I got that sorted out (hopefully ), so maybe it will fix the issue you reported too as I think they steam from the same set of circumstances. Fix will be in the next build.

    Oh, one nice feature I got in the current build is the TBuffer object. This is memory mapped and paging from disk is handled automatically. Large data files (levels, for example) can be access as if it was just a memory pointer. If the pointer reference you're currently accessing is on not in memory, it will page in transparently. NICE! You can access the pointer directly or use the position/read/write routines (its actually a TStream decedent).

  2. #22
    Very cool. Nice demo project. Out of curiousity though, what exactly made you go with DirectX 9 for new development in 2017?

  3. #23
    @Akira13, thanks. Ahh yea, that is the version of the chuck of rendering code that I pulled over from an another project. It's works and well tested so I stuck it in so that I can get the new API to a stable point. Then I can go back later and swap out/upgrade etc.

  4. #24
    *** UPDATE ****
    Removed the scripting engine for now. Too unable. I hope to add something better in the future.


    Okay, so I got the scripting system implemented. It can compile Delphi 7 level syntax to 32 bit native code. You can run the whole script and/or call a script routine, create a script class instance and call its methods. Be in next build. ��

    Code:
    function  Script_Create: TScript; stdcall; external LGL_DLL;
    procedure Script_Destroy(var aScript: TScript); stdcall; external LGL_DLL;
    procedure Script_Reset(aScript: TScript); stdcall; external LGL_DLL;
    function  Script_Compile(aScript: TScript; aArchive: TArchive; aFilename: PChar): Boolean; stdcall; external LGL_DLL;
    function  Script_ErrorCount(aScript: TScript): Integer; stdcall; external LGL_DLL;
    function  Script_WarningCount(aScript: TScript): Integer; stdcall; external LGL_DLL;
    function  Script_ErrorMessage(aScript: TScript; aIndex: Integer): PChar; stdcall; external LGL_DLL;
    function  Script_WarningMessage(aScript: TScript; aIndex: Integer): PChar; stdcall; external LGL_DLL;
    procedure Script_SaveProgram(aScript: TScript; aFilename: PChar); stdcall; external LGL_DLL;
    procedure Script_Run(aScript: TScript); stdcall; external LGL_DLL;
    function  Script_CallRoutine(aScript: TScript; aFullname: PChar; aParamList: array of OleVariant): OleVariant; stdcall; external LGL_DLL;
    function  Script_CreateObject(aScript: TScript; aClassName: PChar; aParamList: array of const): TObject; stdcall; external LGL_DLL;
    procedure Script_DestroyObject(aScript: TScript; aObject: TObject); stdcall; external LGL_DLL;
    function  Script_CallMethod(aScript: TScript; aFullname: PChar; aInstance: TObject; aParamList: array of OleVariant): OleVariant; stdcall; external LGL_DLL;
    function  Script_GetAddress(aScript: TScript; aFullname: PChar): Pointer; stdcall; external LGL_DLL;
    procedure Script_SetCompileEvent(aScript: TScript; aEvent: TScriptCompileEvent); stdcall; external LGL_DLL;
    function  Script_CompileEvent(aScript: TScript): TScriptCompileEvent; stdcall; external LGL_DLL;
    Last edited by drezgames; 04-11-2017 at 06:30 PM.

  5. #25
    That is very interesting. Looking forward to examples/demo/etc. Check out BCEditor in case you need nice syntax highlighting.

  6. #26
    Quote Originally Posted by Thyandyr View Post
    That is very interesting. Looking forward to examples/demo/etc. Check out BCEditor in case you need nice syntax highlighting.
    Hey thanks. I will check out BCEditor!

  7. #27
    Fixed in this release:

    • Database type ID where mission in the API binding header
    • Added fix for floating point operation exception

    Added in this release:

    • Allow PolyPoint collision check with a point (suggested by Jon Souter)
    • Added basic physics + example
    • Added scripting support + examples
    • Reorganized the Examples menu into Native and Script sub menus
    • General fixes and improvements
    Last edited by drezgames; 04-11-2017 at 06:30 PM.

  8. #28
    The new examples start fine, but I get something called "Non user breakpoint" if I hit F12 on script examples or drop too many physics items. Again, I'm at work computer without graphics card.

  9. #29
    Quote Originally Posted by Thyandyr View Post
    The new examples start fine, but I get something called "Non user breakpoint" if I hit F12 on script examples or drop too many physics items. Again, I'm at work computer without graphics card.
    Hi, thanks for the report. Rem too it needs a Direct3D compliant 3D video to work property. Are you running the example standalone or from within an IDE with the debugger? I've noticed I get this ever so often when I run in debug mode. The physics run in a background thread and the debugger I think interferes with it somehow and/or I need to check for more areas for thread safety. I found and fixed a few more areas for this release. Still investigating. Again, thanks.

  10. #30
    OK that makes sense. I never had that before. And it is only happens in Debug mode as you said.

Page 3 of 6 FirstFirst 12345 ... LastLast

Tags for this Thread

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
  •