Skip to content

Projekt J.E.N.O.V.A is a comprehensive series of components for Godot Engine expanding its capabilities with cutting-edge technologies.

License

Notifications You must be signed in to change notification settings

Jenova-Framework/J.E.N.O.V.A

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Jenova-Framework-Banner

Projekt J.E.N.O.V.A

JENOVA-Screenshot

🪶 What is it?

Projekt J.E.N.O.V.A is a comprehensive series of components for the Godot Engine expanding its capabilities with cutting-edge technologies. It introduces fully-featured C++ scripting within the Godot Editor and allows the use of modern C++ 20/23 standards within the Godot Engine, similar to GDScript/C#.

By using Jenova Framework you can easily program your entire game or application in C/C++ without any issues. You can also integrate OpenCV, CUDA, Vulkan, OpenMP and any other modern C++ features seamlessly, All supported by the powerful backend.

Structure of Projekt J.E.N.O.V.A

Component Description License
Jenova Framework The framework contains Jenova Runtime and JenovaSDK. -
Jenova Runtime The heart of the framework, including the Jenova Interpreter, Jenova Compiler Interface, Jenova Packer, etc. MIT
Jenova SDK Optional component of Jenova Runtime, providing helpers and APIs for hot-reloading, global allocation/access, etc. MIT
Jenova RTX Real-time RTX-powered path tracer for Godot developed using Jenova Framework, featuring DLSS 4.0 and Ray Reconstruction. Proprietary
Jenova Fibers Real-time GPU-accelerated per-strand hair rendering solutions for Godot Engine, optimized for fast and high-fidelity hair and fur rendering. Proprietary
Jenova Emulator A fully featured virtual machine and operating system emulator for Godot Engine, capable of running WinNT and Unix‑based operating systems. Proprietary
Jenova LLM Minimal Real-Time Vulkan-powered Large Language Model Runtime developed using Jenova Framework. * Freeware
Jenova Code IDE Full-spectrum IDE for Godot built on VSCode Core, engineered for deep integration and modular control. Freeware

🛠️ Current Features

  • Super Lightweight (5MB)
  • User-Friendly and Easy to Use
  • Very Fast & Reliable
  • Multi-Threaded Compilation & Source Caching
  • Debug Information Support
  • Managed Safe Execution (MSE)
  • Built-in Package Manager (Compilers, SDKs, Tools, Plugins etc.)
  • C++ Scripts can be used exactly like GDScripts
  • Supports Script Templates (Smart/Pre-Defined/User-Defined)
  • Supports Built-in Script Mode (Embedded)
  • Supports C++ Tool Script Mode (In-Editor Execution)
  • Supports Exporting Properties, Resources and References from C++ Scripts
  • Supports Engine Method/Property Queries (Animation Editor, Binding etc.)
  • Supports Custom Class Name & Custom Class Icon for C++ Scripts
  • Supports Custom Documentation for C++ Scripts
  • Full Support for MSVC, LLVM, MinGW and GCC/Clang
  • Multiple Interpreter Backends (NitroJIT, Meteora, A.K.I.R.A etc.)
  • Next-Gen Hot-Reloading Both at Runtime & Editor
  • Real-Time GDExtension Development
  • Operating System Emulation (Unix/WinNT)
  • Visual Studio Side-by-Side Deep-Integration
  • Visual Studio Exporter & Build System (2017-2022)
  • Visual Studio Code Integration (Windows/Linux/MacOS)
  • Auto Detection of Installed Visual Studios
  • JetBrains CLion IDE Integration (Windows/Linux)
  • Neovim Integration (Linux)
  • Supports External Libraries and .NET Invoke
  • Watchdog System (Reload-On-Build)
  • Built-in Terminal Logging System (Customizable)
  • Asset Monitor System API (File/Directory Tracking)
  • On-Demand Reload Per Script Change
  • Lambda Signal Callbacks
  • Advanced Menu Options
  • Supports Additional/External Headers & Libraries
  • Build And Run Mode (Build Before Play/Play After Build)
  • Code Compression/Encryption (External/Built-in)
  • Direct GetNode & GetTree API
  • User Defined Preprocessor Definitions
  • Supports In-Editor C++ Headers
  • Module Boot/Shutdown Events
  • Capable of Invoking C# (GodotSharp) and GDScript Directly
  • Compatible with Mono Builds
  • Supports C++ Headers Directly Inside Editor
  • Supports Scene Node Referencing
  • Supports Source Control using Git
  • Supports Engine Forks
  • And Much More!

📋 Source Code

Jenova Runtime (Core) Source Code is available on GitHub for everyone under MIT license.

👻 Why Called Jenova?

I've received some amusing comments about the project name, so here's the backstory. Although I'm a huge FF7 fan, the name isn’t directly linked to Final Fantasy. Jenova is derived from 'Jehovah,' meaning 'New God.' I chose this name because Godot translates to 'Small God.' Therefore, in this context, Jenova signifies a new god emerging from a small god. Additionally, it means 'Well-Born'

Now, why Jenova and J.E.N.O.V.A? The answer is straightforward. Name formatting like this was popular in the 2000s, similar to F.E.A.R. or A.K.I.R.A. It doesn't reference anything specific. However, it's worth noting that Projekt J.E.N.O.V.A refers to the entire toolchain, which includes the Framework, Runtime, Emulator, etc.

🛠️ GDExtension vs Jenova Framework

Jenova Framework is not only a toolset to ease the development of GDExtension in Godot, It implements a fully-featured C++ script backend and adds deep integration to the engine script interface just like GDScript, C# and Python.

Jenova Runtime contains an interpreter and C++ Script Instance implementation. Jenova Framework itself comes with C++ Script Object and C++ Language implementations. Everything works together to bring the actual scripting experience using the C++ language.

📃 Getting Started

To get started with the Jenova Framework you can visit the official Documentation. While the Jenova Framework is fairly easy to use its extensive features can be a bit overwhelming. To help you navigate we've prepared a very detailed guide that covers every detail and component of the framework. Additionally, we regularly publish video tutorials to provide further assistance.

Projekt J.E.N.O.V.A also has an offical Discord Server:

Discord

Important

Jenova Supports Godot 4.2+, Windows 7 to 11 x64 and Linux x64, Mac and Web support is planned.
Jenova provides MSVC, Clang-cl, MinGW, LLVM Clang and GCC Support, However you can use Visual Studio on Windows directly without Jenova MSVC Compiler Package.

If you need C++ Scripting with support Mac you can use Godot Sandbox.


Jenova is a Free software.

Developed with 💙 and 🩸By Hamid.Memar

About

Projekt J.E.N.O.V.A is a comprehensive series of components for Godot Engine expanding its capabilities with cutting-edge technologies.

Topics

Resources

License

Stars

Watchers

Forks

Languages