赋予 C# 使用 LÖVE 引擎的能力,一切方法都可以直接按照love2d含义使用 https://love2d.org/wiki/love
- Nuget 包(17MB 左右) : https://www.nuget.org/packages/Love2dCS
- 仅 Windows(x64/x86) 的 Nuget 包(6MB 左右): https://www.nuget.org/packages/Love2dCS-win
- 仅 Ubuntu(x64) 的 Nuget 包(6MB 左右): https://www.nuget.org/packages/Love2dCS-ubuntu
- 仅 MacOS(x64) 的 Nuget 包(6MB 左右): https://www.nuget.org/packages/Love2dCS-mac
- 📃 英文文档 https://endlesstravel.github.io
- 📃 中文文档-还没写完 https://endlesstravel.gitee.io/lovesharpdocument/
- 📕 love wiki
- ImGui 支持: here, based on ImGui.NET
- 安装介绍
- Aseprite 支持库
- Spine 支持库
- 与Lua同时工作
- 测试文件示例 / 物理模块测试文件示例
windows-x86
/windows-x64
/ubuntu-16 x64
/ubuntu-18 x64
/MacOS 10.12+ x64
加上.net startard 1.2
(.NET Core
|.NET Framework 4.5.1
|Mono 4.6
)
Love2dCS API尽可能与原来的 LÖVE 引擎
保持一致,但任然有一些和原始 LÖVE
不一致的地方:
- 可以使用
Love.XXXX.New*
访问任意文件夹里的资源内容. 原始LÖVE
仅可以访问当前文件夹的内容。 - 因为 float 的精度问题,
Timer.GetTime
在本库中表示的是游戏开始到现在的时间。 - LÖVE 中的
love.math
在 Love2dCS 被改名为Love.Mathf
- LÖVE 中的
love.system
在 Love2dCS 被改名为Love.Special
- Love2dCS 不打算提供线程模块,请使用 C# 中的线程。
- 在 LÖVE 中,为了遵循 lua 语言的习惯,索引是从 1 开始的。而 Love2dCS 中的索引遵循 C# 语言的使用习惯,从 0 开始记起。
- Love2dCS 提供了更多的内置模块,以供使用.
- Love2dCS 可以同时和lua进行工作,详情请参考 : https://endlesstravel.github.io/#/tutorial/05.use-lua
- Love2dCS 当前基于 LÖVE 11.1
绘制文字
using Love;
class Program : Scene
{
public override void Draw()
{
Graphics.Print("Hello World!", 400, 300);
}
static void Main(string[] args)
{
Boot.Run(new Program());
}
}
- 完善文档
- retain的函数调用
- 完善C#中的love object继承关系
- string 与 UTF8 编码
- 完善C#实用性
- 发布到NuGet
- 添加对 win-x64 平台的支持
- 添加物理模块
- 写测试部分
记得多年前,我想找一个合适的2D引擎做个小游戏,当时只会静态语言的我找到了love2d这个极其优秀的引擎。当时我是对lua这样的动态语言是保持敬而远之的态度的。但是现在,lua和love2d都成为了我最喜欢的东西之一。我一直都能感觉到love2d对新手是多么友好,而我也喜欢C#,于是我决定移植love2d到C#上。