Skip to content

Cryru/Emotion

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Emotion

CI-Windows

What is it?

Emotion is a cross-platform game engine written in C# with minimal dependencies, for me to make games in. The engine is more targeted towards programmers and is alternative to stuff like MonoGame, FNA, and Love rather than Unity.

Games

A visual novel for Windows, Linux, and x64 Mac.

The version this game was built on is kept in the "adfectus-backup" branch.

A roguelike deckbuilder for Windows and Linux, with an Android version built but not published.

The version this game was built on is kept in the "EtA" branch.

Target Hardware:

  • OpenGL 3.0 or higher supported hardware
    • Or DirectX 11 if ANGLE is enabled
    • Or a multi-core CPU if the Mesa software renderer is enabled
    • WebGL 2.0 on Web
  • Be able to run the Net 9 runtime.
  • A supported platform:
    • Windows 32 and 64 bit
    • Linux 64 bit (Steam Deck works too)
    • Android API 23+
    • Or implement your own via PlatformBase :)

That's it.

Developing and Building

It is recommended you develop with a cloned version of the Emotion repo linking 'Emotion.csproj' and 'Emotion.SourceGeneration' in your solution. This way you have the most control over your code.

Credits and Dependencies

By default Emotion has no external dependencies, any third party code is copy-pasted and statically compiled inside the project. Note: All third-party code used is also modified in some way, so updating it to newer versions isnt very straight forward.

Include the "LICENSE THIRD-PARTY" file from the repository in your exe when distributing.

Dependencies

Library License Used For Inclusion
.Net Core MIT Runtime Nuget
System.Numerics MIT Data structures and hardware intrinsics Nuget
xxhash (pure C# implementation) MIT Hashing data ThirdParty/xxhash
Icaria Noise MIT Perlin Noise ThirdParty/IcariaNoise
Fast Noise Lite MIT Simplex Noise ThirdParty/FastNoiseLite
WinApi Apache Windows API Interop Headers @ Emotion.Core.Platform.Implementation.Win32.Native
OpenGL.Net MIT OpenGL API ThirdParty/OpenGL
StbTrueType & StbTrueTypeSharp MIT & GPL3 Font Rendering Option and Comparison Referenced by Tests @ Tests/StbTrueType and Graphics/Text/StbGlyphRenderer
TiledSharp Apache 2.0 .TMX Support Uses custom XML and engine integration @ Emotion.Standard.Parsers.TMX

Optional Dependencies

Library License Used For Inclusion
Roslyn/Microsoft.CodeAnalysis.CSharp MIT Runtime C# Script Compilation Emotion.Plugins.CSharpScripting
CimGui & CimGui.Net MIT Developer UI Emotion.Plugins.ImGuiNet, Precompiled for Mac64, Linux64, and Win64
ANGLE Google License Compatibility Precompiled for Win32 and Win64, Add "ANGLE" symbol
llvmpipe / Gallium / Mesa MIT Compatibility via Software Renderer Precompiled for Win32 and Win64
Glfw & Glfw.Net Zlib Mac and Linux Window Creation Precompiled for Mac64, Linux64, Win32, and Win64, Add "GLFW" symbol
OpenAL-Soft & OpenAL.NetCore LGPL & MIT Mac and Linux Audio Precompiled for Mac64, Linux64, Win64, Add "OpenAL" symbol
Assimp & AssimpNet Modified BSD Reading FBX files The Emotion build tool
Assimp (Engine) & Silk.NET.Assimp Modified BSD & MIT 3D Model preview and conversion Add "ASSIMP" symbol
SixLabors.ImageSharp Six Labors Split License Developer loading and conversion of unsupported image types such as "jpg" Add "MORE_IMAGE_TYPES" symbol

Used as References and Research

Library License Used For Inclusion
McGill Engineering X Hardening WAV and Audio Implementation None
PNGSuite X Hardening PNG Implementation None
OpenType.JS X Font Parsing Reference None
Nine.Imagine X Image Parsing Comparison None
ImageSharp X Quirky Image Format Reference None
OpenAL-Soft X Audio Code Reference None
NAudio X Audio Code Reference None
Audacity X Audio Code Reference None
Astiopin's SDF generator X EmotionSDF4 atlas generation reference None

Releases

No releases published

Packages

 
 
 

Contributors 4

  •  
  •  
  •  
  •