|
|
@@ -6,11 +6,9 @@ What is it?
|
|
|
-----------
|
|
|
|
|
|
Crown is a complete and cross-platform game engine designed for flexibility,
|
|
|
-performance, and fast-iterations.
|
|
|
-
|
|
|
-It is not limited to a specific game type or genre; rather, it provides a set of
|
|
|
-versatile primitives and tools that can be used to create a broad range of both
|
|
|
-3D and 2D games.
|
|
|
+performance, and fast-iterations. It isn't tied to any specific game type or
|
|
|
+genre; instead, it provides versatile tools and primitives for building a wide
|
|
|
+range of 3D and 2D games.
|
|
|
|
|
|
.. image:: shots/level-editor.png
|
|
|
|
|
|
@@ -24,10 +22,10 @@ versatile primitives and tools that can be used to create a broad range of both
|
|
|
License
|
|
|
-------
|
|
|
|
|
|
-The games you create with Crown is your sole property. All the data (models,
|
|
|
-textures, levels etc.) and code you produce (including data and code that Crown
|
|
|
-itself outputs) is free for you to use as you wish. See :doc:`copyright` for an
|
|
|
-exhaustive list of the licenses involved.
|
|
|
+The games you create with Crown are your sole property. All the data (models,
|
|
|
+textures, levels etc.) and code you produce (including any data and code
|
|
|
+generated by Crown) are yours to use as you wish. See :doc:`copyright` for a
|
|
|
+comprehensive list of applicable licenses.
|
|
|
|
|
|
Supported platforms
|
|
|
-------------------
|
|
|
@@ -35,12 +33,12 @@ Supported platforms
|
|
|
* Runtime
|
|
|
* Android 7.0+ (ARMv7-a, ARMv8-a)
|
|
|
* HTML5 (Wasm/Emscripten)
|
|
|
- * Ubuntu 20.04+ (x86_64)
|
|
|
- * Windows 7+ (x86_64)
|
|
|
+ * Ubuntu 22.04+ (x86_64)
|
|
|
+ * Windows 10+ (x86_64)
|
|
|
|
|
|
* Editor
|
|
|
- * Ubuntu 20.04+ (or any 64-bit Linux with GTK+ >= 3.24)
|
|
|
- * Windows 7+
|
|
|
+ * Ubuntu 22.04+ (or any 64-bit Linux with GTK+ >= 3.24)
|
|
|
+ * Windows 10+
|
|
|
|
|
|
Design Principles
|
|
|
-----------------
|
|
|
@@ -67,25 +65,27 @@ design principles:
|
|
|
any work.
|
|
|
|
|
|
* Lightweight Codebase and Runtime
|
|
|
- The Runtime (plus tools) consist of fewer than 70K lines of code. Written in
|
|
|
- straightforward 'C-style' C++, it is easily understood and extensible by
|
|
|
- anyone.
|
|
|
+ The whole engine (runtime + tools) consist of fewer than 100K lines of code.
|
|
|
+ Written in high-performance native languages only, it is easily understood
|
|
|
+ and extensible by anyone.
|
|
|
|
|
|
Features
|
|
|
--------
|
|
|
|
|
|
-* Cross-platform Editor
|
|
|
- * DCC data importers for models, textures, sounds etc.
|
|
|
- * Scene Editor with place/move/rotate/scale controls, snapping, selection etc.
|
|
|
+* Cross-platform Editors
|
|
|
+ * DCC data importers for models, textures, sprites, sounds, fonts etc.
|
|
|
+ * Level Editor with place/move/rotate/scale controls, snapping, selection etc.
|
|
|
+ * Dedicated editors for most resource types (Animation, Unit prefabs, Texture Settings etc.)
|
|
|
+ * Object Inspector with component-based workflow.
|
|
|
+ * Project Browser with global searching, multiple view modes, thumbnails etc.
|
|
|
* Deployer for Android, HTML5 and desktop platforms.
|
|
|
- * Project Browser with thumbnails, global searching and multiple view modes.
|
|
|
- * Scene Tree and object Inspector.
|
|
|
- * Console with Lua REPL.
|
|
|
+ * Console with Lua REPL and runtime commands.
|
|
|
+ * Undo/redo everywhere, light/dark theme, customizable launchers and much, much more...
|
|
|
|
|
|
* Graphics
|
|
|
* High-level 3D & 2D objects (meshes, cameras, lights and sprites).
|
|
|
* Physically-based rendering pipeline.
|
|
|
- * Cross-platform GLSL-like shader programming language.
|
|
|
+ * GLSL-like shader programming language.
|
|
|
* 3D skeletal animation.
|
|
|
* Animation state machine with events, variables and blending with simple expressions evaluator.
|
|
|
* Immediate-mode GUI API with customizable materials.
|
|
|
@@ -93,7 +93,7 @@ Features
|
|
|
* Flipbook sprite animation.
|
|
|
* FBX and custom mesh formats.
|
|
|
* DDS, EXR, JPG, KTX, PNG, PVR and TGA texture formats.
|
|
|
- * D3D11, GL 3.2 and GLES 2.0 render backends.
|
|
|
+ * D3D11, Vulkan and GLES 2.0 render backends.
|
|
|
|
|
|
* Physics
|
|
|
* Static, dynamic and keyframed rigid bodies with multiple colliders.
|
|
|
@@ -103,23 +103,24 @@ Features
|
|
|
* Spatial queries: ray-, sphere- and box-casts.
|
|
|
* Joints (fixed, spring and hinge).
|
|
|
|
|
|
+* Audio
|
|
|
+ * 3D audio sources with position and range-based attenuation.
|
|
|
+ * Sound groups for bulk volume adjustments.
|
|
|
+ * Audio streaming.
|
|
|
+ * Formats: WAV and OGG.
|
|
|
+
|
|
|
* Scripting
|
|
|
* Integrated Lua runtime can be used to control every aspect of the game.
|
|
|
* On supported platforms, LuaJIT is used for even higher performances.
|
|
|
* Integrated REPL to quickly test and experiment while the game is running.
|
|
|
* Live reloading of gameplay code without needing to restart the game.
|
|
|
|
|
|
-* Debugging
|
|
|
- * Integrated profiler and data plotter graph.
|
|
|
- * C++ and Lua callstack generation.
|
|
|
-
|
|
|
* Input
|
|
|
* Unified interface for mice, keyboards, joypads and touchpads.
|
|
|
* Access to sub-frame input events list.
|
|
|
* Simplified polling interface for rapid prototyping.
|
|
|
|
|
|
-* Audio
|
|
|
- * 3D audio sources with position and range-based attenuation.
|
|
|
- * Sound groups for bulk volume adjustments.
|
|
|
- * Audio streaming.
|
|
|
- * Formats: WAV and OGG.
|
|
|
+* Debugging
|
|
|
+ * Integrated profiler API and data plotter graph.
|
|
|
+ * C++ and Lua callstack generation.
|
|
|
+
|