Results 1 to 10 of 179

Thread: nxPascal

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    These different compiler related issues are often solved with IFDEF's. If you see here:
    https://code.google.com/p/nxpascal/s.../src/nxInc.inc
    there is for now only definitions for which compilers support inlining (by removing function and parameter overhead it can increase math functions performance great deal, at slightly higher memory cost). There could also be a {$DEFINE OldPng} that would only be active on older Delphi compiler versions. But again, as i don't have a Delphi it is difficult to do something like that on my own. Do the png's work then with no reference unit in uses list? I don't know where the new Delphi finds the needed PNG class, and since what version it was available.

    bass.pas or nxBass.pas? If it's bass.pas, then it should be reported to them, possibly with suggests on how to fix them.

  2. #2
    In Delphi PNG images are supported trough TPngImage class which is a subclass of TGraphic and is located in "Vcl.Imaging.pngimage" unit.
    But based on Lifepower there is/was and isue with Delphi built-in PNG support regarding alpha channels so Lifepower sugested to use "Vampyre Imaging Library" with Asphyre Sphinx 3 instead of Delphi built-in PNG support.
    Delphi's PNG implementation has an issue in alpha-channel. An alternative solution is to use Vampyre Imaging Library and add AsphyreVampyre to USES list. This solution also works for FreePascal/Lazarus. You should download the latest snapshot from the link below.
    This was at the time when Delphi XE2 was out so it is posible that the problem was already fixed by now (I haven't tested it out).

    As for BASS Audio Library:
    I don't exactly remember when but in one of the previous versions there were some serious changes made which means that it is no longer posible to simply compile old program with newest bass.pas unit.
    Not sure what changes were made but one project of mine throws almost a hundred syntax errors. All demos that come with BASS library compile just OK. And yes I tried this on Delphi XE3 and Delphi 7 with which I have developed my project in the first place. So one day I'll have to take tme and see what changes were made and update my code acordingly.

  3. #3
    Regarding PNG units...I prefer to use Be Ro (Benjamin)'s free cross-platform PNG unit:
    http://www.pascalgamedevelopment.com...loader&p=97221

    See one of the last posts for a pure Pascal version (compatible with Freepascal, Delphi XE3 & XE4):
    http://www.pascalgamedevelopment.com...ll=1#post94019

    cheers,
    Paul
    Last edited by paul_nicholls; 02-02-2014 at 02:05 AM.

  4. #4
    I was at work, had nothing to do and thinked about modern OpenGL 3.x and nxPascal.
    Its pretty difficult to setup matrices, vertex data etc with modern OpenGL and the shaders needed for matrix stuff and so on.
    So idea for the nxPascal.

    Make everything "behind the scene" and let user to use simple to understand and use commands.
    For example lets take: glTranslatef(), nice command to "move things" and position them in place.

    In modern gl you have to do alot of dirty work to implement this. At least i see it so and its just one (!) example.
    So make everything needed in modern OpenGL to get the same result. But instead calling it again glTranslatef, call it for example: nxTranslatef or something.
    So i build my mesh and want to position or move it i just use for ex: nxTranslatef(2.0, 2.0, 5.0); (XYZ) order.

    And same for other things.
    There could be some shader templates provided for matrix stuff, for cameras etc.

    With such commands and nxPascal doing all the "hard" things behind the scenes will make using modern OpenGL much easier.


    What do you guys think?


    I would like to rewrite my map editor for new OpenGL 3.x+ but the amount of writing code just for building mesh and simple camera matrix stuff scares me.
    I dont even know proper good OpenGL headers for new OpenGL versions, except dglOpenGL. Is it even updated lately?

    Share your thoughts.

  5. #5
    So basically you are thinking about adding aditional abstract level which will hide most low level fidling nad thus make your engine more user friendly. I think that is a verry good idea.

    But if you do decide to do this then I recomend you give it a more deeper thought and try making it in a way that it would not only alow you to hide some low level fidling but also open you a way to implement other types of renderning like DirectX support etc.

  6. #6
    Camera class was already implemented, as far as i'd understand what you mean. See in picking demo:
    https://code.google.com/p/nxpascal/s...icsUnit.pas#82

    There hasn't been motivation to pascal coding for propably over a year now. It's difficult to make myself come back to this, with Unity and stuff around In the end i will never be able to compete with features, code quality, portability and simplicity.

    I have also started the project moving into github, since code.google.com is quitting.

    edit: Moving is completed, and wiki converted.
    Last edited by User137; 10-06-2015 at 02:33 PM.

  7. #7
    Quote Originally Posted by User137 View Post
    Camera class was already implemented, as far as i'd understand what you mean. See in picking demo:
    https://code.google.com/p/nxpascal/s...icsUnit.pas#82

    There hasn't been motivation to pascal coding for propably over a year now. It's difficult to make myself come back to this, with Unity and stuff around In the end i will never be able to compete with features, code quality, portability and simplicity.

    I have also started the project moving into github, since code.google.com is quitting.

    edit: Moving is completed, and wiki converted.
    It would be great if you continued the project, iv'e played around with unity and stuff but I like programming pascal lol.

  8. #8
    I test it and works awesome! Android support would be great

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
  •