* * *

Author Topic: Castle Game Engine 6.0 released  (Read 2232 times)

michalis

  • Jr. Member
  • **
  • Posts: 82
    • Homepage
Castle Game Engine 6.0 released
« on: February 18, 2017, 10:43:29 am »
We're proud to release Castle Game Engine 6.0, an open-source 3D and 2D game engine for Object Pascal.

This release is a culmination of more than a year of intensive engine development. The main feature is that almost every part of the engine got significant improvement, and we have more "new features" than you probably care to read about:)

You can download the engine, and read the documentation, from

  https://castle-engine.sourceforge.io/

Some highlights of the new features (see the full release announcement here):

  • New user interface features: auto-scaling, parents, anchors, many new components and properties,
  • New build tool features: automatic generation and usage of GPU-compressed and downscaled textures, --mode=valgrind,
  • A large number of Android package components, that provide an integration with various 3rd party Android libraries on Android (Google Play Games, In-app Purchases, sound libraries, ad networks, analytics, vibrations...),
  • New castle-anim-frames format, with a Blender exporter, to export *any* animations from Blender to our engine (armature, shape keys, baking physics simulations, ....).

Also, the entire website, and the manual and the guide to creating game data, received a lot of additions and changes.

Last but not least, I wanted to mention our new Patreon page. You can support the engine development and get some real rewards --- I'm devoting a weekend per month exclusively to the features requested by Patrons, you can get access to the "cloud build server" (continuous integration) for your game projects, and I will have a 24h gamejam every month making a demo game requested by Patrons. Please check out our Patreon page on:

  https://www.patreon.com/castleengine

P.S. Everything compiles with the today's announced FPC version 3.0.2 (and other FPC versions too) of course!

Handoko

  • Hero Member
  • *****
  • Posts: 1169
  • My goal: build my own game engine using Lazarus
Re: Castle Game Engine 6.0 released
« Reply #1 on: February 18, 2017, 11:50:44 am »
Congratulation!

I ever tried the previous version, it installed and run at the first try. I am a bit busy at the moment. I will certainly spend more time to learn and use it when I have more time.

Castle Game Engine is a great project. Thank you.

jacmoe

  • Sr. Member
  • ****
  • Posts: 254
    • Jacmoe's Cyber SoapBox
Re: Castle Game Engine 6.0 released
« Reply #2 on: February 18, 2017, 03:01:02 pm »
Great, great news! :D

Castle Game Engine, and your Modern Pascal 'booklet' is two main reasons why I am back in Object Pascal and have decided to take up Lazarus / Free Pascal.  ;D

(( 20 years after ))
more signal - less noise

lainz

  • Hero Member
  • *****
  • Posts: 1859
  • Nace una flor, todos los días sale el sol...
    • BGRABitmap
Re: Castle Game Engine 6.0 released
« Reply #3 on: February 18, 2017, 03:26:32 pm »
I need to try this.

Feel free to enter the Graphics Contest 2017 with a game made with this engine  8)

Zath

  • Full Member
  • ***
  • Posts: 234
Re: Castle Game Engine 6.0 released
« Reply #4 on: February 18, 2017, 04:11:52 pm »
Thanks for all your efforts with this.
Just wish there were eight days a week and my brain would take it all in at the click of a TButton !

Akira1364

  • Full Member
  • ***
  • Posts: 210
Re: Castle Game Engine 6.0 released
« Reply #5 on: February 19, 2017, 05:08:51 am »
I can't recommend Castle enough! It's so underrated, considering the fact that it is literally a borderline "triple-A" quality engine.... lightyears ahead of anything else out there in the Pascal world. I really believe it should be at the top of the list anytime anyone asks "is Object Pascal capable of real applications?"

lainz

  • Hero Member
  • *****
  • Posts: 1859
  • Nace una flor, todos los días sale el sol...
    • BGRABitmap
Re: Castle Game Engine 6.0 released
« Reply #6 on: February 19, 2017, 06:50:47 pm »
I can't install it with FPC trunk and Lazarus trunk.

I get errors when installing it, Internal error 2014081401. This line:

Code: Pascal  [Select]
  1. Code: Pascal  [Select]
  2.     Handled := Items[I](Received) or Handled;    

at Castle Messaging unit.

"{ Message system to communicate between native code and Java on Android
  (TMessaging). }"

And maybe I need some android stuff to compile that unit?

I tried installing it through OPM (http://forum.lazarus.freepascal.org/index.php/topic,34297.0.html).

Akira1364

  • Full Member
  • ***
  • Posts: 210
Re: Castle Game Engine 6.0 released
« Reply #7 on: February 19, 2017, 08:22:14 pm »
I can't install it with FPC trunk and Lazarus trunk.

I get errors when installing it, Internal error 2014081401. This line:

Code: Pascal  [Select]
  1. Code: Pascal  [Select]
  2.     Handled := Items[I](Received) or Handled;    

at Castle Messaging unit.

"{ Message system to communicate between native code and Java on Android
  (TMessaging). }"

And maybe I need some android stuff to compile that unit?

I tried installing it through OPM (http://forum.lazarus.freepascal.org/index.php/topic,34297.0.html).

You definitely don't need any android stuff. It's just a compiler bug (because technically it should work the way they've written it.)

Change the method to read as follows and it should compile fine:

Code: Pascal  [Select]
  1. procedure TMessageReceivedEventList.ExecuteAll(const Received: TCastleStringList);
  2. var
  3.   I: Integer;
  4.   EventResult, Handled: Boolean;
  5. begin
  6.   Handled := false;
  7.   for I := 0 to Count - 1 do
  8.   begin
  9.     EventResult := Items[I](Received);
  10.     Handled := EventResult or Handled;
  11.   end;
  12.   if not Handled then
  13.     WritelnWarning('JNI', 'Unhandled message from Java:' + NL + Received.Text);
  14. end;
« Last Edit: February 20, 2017, 01:50:58 am by Akira1364 »

lainz

  • Hero Member
  • *****
  • Posts: 1859
  • Nace una flor, todos los días sale el sol...
    • BGRABitmap
Re: Castle Game Engine 6.0 released
« Reply #8 on: February 19, 2017, 11:18:48 pm »
Thanks I will try.

michalis

  • Jr. Member
  • **
  • Posts: 82
    • Homepage
Re: Castle Game Engine 6.0 released
« Reply #9 on: February 20, 2017, 01:28:50 am »
I can't install it with FPC trunk and Lazarus trunk.

I get errors when installing it, Internal error 2014081401. This line:

Code: Pascal  [Select]
  1. Code: Pascal  [Select]
  2.     Handled := Items[I](Received) or Handled;    

at Castle Messaging unit.

It's a bug in FPC 3.1.1, as Akira1364 writes, and the workaround in Akira1364's post is cool too. (Thank you!) While this unit is especially useful on Android, it should compile on any platform, and does not require anything special to be installed.

I can reproduce the problem myself, and I committed the workaround to engine on GitHub ( https://github.com/castle-engine/castle-engine/commit/50c36dc794f88a18a8166150e4ba32731135d07c ). Everything compiles and works now with the latest FPC 3.1.1, as far as I tested.

Note: FPC from trunk is usually very stable, and we check it often, but it changes constantly, so we cannot guarantee that CGE compiles with it. You can use a stable version, like 3.0.2, to have a tested compiler version:)

I didn't know about http://wiki.freepascal.org/Online_Package_Manager or that Castle Game Engine can be installed through it -- great thing! I'll play with it this week!

And thank you everyone for the good words. Please ask if you have any questions about the engine:)

Akira1364

  • Full Member
  • ***
  • Posts: 210
Re: Castle Game Engine 6.0 released
« Reply #10 on: February 20, 2017, 01:49:58 am »
Hahaha, I'm officially a "Castle Game Engine Dev".  ;) (Heavy emphasis on the quotation marks...)
« Last Edit: February 20, 2017, 02:22:56 am by Akira1364 »

hnb

  • Full Member
  • ***
  • Posts: 173
Re: Castle Game Engine 6.0 released
« Reply #11 on: February 20, 2017, 08:42:01 am »
It's a bug in FPC 3.1.1
Please create bug report for this. I can't find any related ticket on mantis.
« Last Edit: February 20, 2017, 09:15:24 am by hnb »
Checkout NewPascal initiative and donate beer - ready to use tuned FPC compiler + Lazarus for mORMot project

best regards,
Maciej Izak

michalis

  • Jr. Member
  • **
  • Posts: 82
    • Homepage
Re: Castle Game Engine 6.0 released
« Reply #12 on: February 20, 2017, 01:14:07 pm »
It's a bug in FPC 3.1.1
Please create bug report for this. I can't find any related ticket on mantis.

Done! See http://bugs.freepascal.org/view.php?id=31421 . It's only reproducible with -O2, and seems to manifest with two different internal error codes - depending on whether you use generic ancestor or not. The details are in the bugreport.

Quote from: Akira1364
Hahaha, I'm officially a "Castle Game Engine Dev".  ;) (Heavy emphasis on the quotation marks...)

You post a fix to CGE -> you become a developer! :) Thank you!

Eugene Loza

  • Sr. Member
  • ****
  • Posts: 375
    • Decoherence Studio :)
Re: Castle Game Engine 6.0 released
« Reply #13 on: February 20, 2017, 02:43:17 pm »
Fantastic news!!! Congratulations! :D
My games in Lazarus/CastleGameEngine:
Project Helena (TBS/RPG) http://sourceforge.net/projects/projecthelena/ (Alpha)
Fire Madness (bullet hell) https://github.com/eugeneloza/FireMadness/ (release candidate)
Decoherence: beyond Wizardry (RPG) https://github.com/eugeneloza/Mazer (just started)

kagamma

  • Newbie
  • Posts: 2
Re: Castle Game Engine 6.0 released
« Reply #14 on: February 21, 2017, 05:57:56 am »
Congratulations on the new release. :)
« Last Edit: February 21, 2017, 05:59:27 am by kagamma »

 

Recent

Get Lazarus at SourceForge.net. Fast, secure and Free Open Source software downloads Open Hub project report for Lazarus