All Projects → Tencent → Puerts

Tencent / Puerts

Licence: other
Write your game with TypeScript in UE4 or Unity. Puerts can be read as pu-erh TS(普洱TS)

Programming Languages

javascript
184084 projects - #8 most used programming language
c
50402 projects - #5 most used programming language
typescript
32286 projects

Projects that are alternatives of or similar to Puerts

Unreal.js Core
Unreal.js plugin submodule
Stars: ✭ 189 (-83.41%)
Mutual labels:  unrealengine, v8
2 terminal hacker
C# functions, refactoring, enumerations, basic state machines. Arguments, parameters, strings, conditionals, variables. Whitespace management, bug fixes and basic game design. (REF: TH_CU2) http://gdev.tv/cu2github
Stars: ✭ 64 (-94.38%)
Mutual labels:  unity
Unityiphonexsupport
Support iPhoneX by changing the drawing area of Unity.
Stars: ✭ 59 (-94.82%)
Mutual labels:  unity
Udllexporter
Tool to build DLLs in Unity.
Stars: ✭ 63 (-94.47%)
Mutual labels:  unity
Unitysapi
init
Stars: ✭ 60 (-94.73%)
Mutual labels:  unity
Unity Scene Query
A library to traverse and query the Unity scene to find particular objects, uses something similar to CSS selectors to identify game objects.
Stars: ✭ 63 (-94.47%)
Mutual labels:  unity
Hooking Template With Mod Menu
A small template for Android Hooking with Substrate. (Includes a mod menu written in Java)
Stars: ✭ 59 (-94.82%)
Mutual labels:  unity
Learning Unity Ecs 2
A bunch of small Unity projects where I explore and learn Unity's new ECS and Job System. Updated for the new API.
Stars: ✭ 65 (-94.29%)
Mutual labels:  unity
Sycophant
Numerous Ninjas: Beta stage mobile game written in Unity
Stars: ✭ 64 (-94.38%)
Mutual labels:  unity
Ksframework
QQ Group:538722494,KSFramework = KEngine + SLua(or xLua) , Unity3D Framework/Toolsets focus on hot reload
Stars: ✭ 1,119 (-1.76%)
Mutual labels:  unity
Unity Marching Cubes Gpu
GPU ComputeShader implementation of Marching Cubes algorithm
Stars: ✭ 62 (-94.56%)
Mutual labels:  unity
Erbium
🤺Third Person Character Controller for unity🤺
Stars: ✭ 61 (-94.64%)
Mutual labels:  unity
Awesome Unity Open Source On Github
A categorized collection of awesome Unity open source on GitHub (800+)
Stars: ✭ 1,124 (-1.32%)
Mutual labels:  unity
Brunetons Ocean
Brunetons ocean in Unity
Stars: ✭ 60 (-94.73%)
Mutual labels:  unity
3 Modifiers And Abilities
Customise character abilities, weapons, characters and enemies. This includes multiple damage types, modifiers, sounds, animations. By the end you can create your core combat experience. (REF MA_RPG) http://gdev.tv/rpggithub
Stars: ✭ 64 (-94.38%)
Mutual labels:  unity
Escapefromtarkov Trainer
Escape from Tarkov Trainer
Stars: ✭ 59 (-94.82%)
Mutual labels:  unity
Unity Hierarchy Folders
Specialized folder objects for Unity Hierarchy.
Stars: ✭ 62 (-94.56%)
Mutual labels:  unity
Numix Gtk Theme
A modern flat theme with a combination of light and dark elements.
Stars: ✭ 1,122 (-1.49%)
Mutual labels:  unity
Drawmeshwithmotionvectors
An example showing how to generate per-object motion vectors when using DrawMesh.
Stars: ✭ 65 (-94.29%)
Mutual labels:  unity
09 Zombierunner Original
First person shooter with Unity terrain and AI pathfinding (http://gdev.tv/cudgithub)
Stars: ✭ 64 (-94.38%)
Mutual labels:  unity

Logo

license release PRs Welcome CI

(English README Available)

What?

puerts是游戏引擎下的TypeScript编程解决方案

  • 提供了一个JavaScript运行时

  • 提供通过TypeScript访问宿主引擎的能力(JavaScript层面的绑定以及TypeScript声明生成)

Why?

  • JavaScript生态有众多的库和工具链,结合专业商业引擎的渲染能力,快速打造游戏

  • 相比游戏领域常用的lua脚本,TypeScript的静态类型检查有助于编写更健壮,可维护性更好的程序

  • 高效:全引擎,全平台支持反射Binding,无需额外(生成代码)步骤即可开发

  • 高性能:全引擎,全平台支持静态Binding,兼顾了高性能的场景

安装

  • git clone https://github.com/Tencent/puerts.git

  • 拷贝插件到您项目

    • unreal engine

      • 拷贝puerts/unreal下的Puerts目录到您项目的Plugins目录下,可以参考unreal demo
    • unity

      • 拷贝puerts/unity/Assets下的所有内容到您项目的Assets目录下,可以参考unity demo

      • Plugins要单独下载releases,或者自行编译

编程样例

Unity

import {UnityEngine} from 'csharp'

UnityEngine.Debug.Log('hello world');
let gameObject = new UnityEngine.GameObject("testobject");
console.log(gameObject.name);
gameObject.transform.position = new UnityEngine.Vector3(1, 2, 3);

Unreal

import * as UE from 'ue'
import {argv} from 'puerts';
let world = argv.getByName("World") as UE.World;
let actor = world.SpawnActor(UE.MainActor.StaticClass(),
    undefined, UE.ESpawnActorCollisionHandlingMethod.Undefined, undefined, undefined) as UE.MainActor;
console.log(actor.GetName());
console.log(actor.K2_GetActorLocation().ToString());

调试

常见问题

使用手册

支持的引擎,平台

引擎

  • unreal engine 4.22 ~ 最新版本

  • unity 5 ~ 最新版本

平台

  • iOS,Android,Windows,Macos

  • 任意.net环境

详细信息

示例

技术支持

QQ群:942696334

UE4专属群:689643903

开发博客

知乎专栏

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].