Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions packages/asset-manager/tsconfig.build.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,7 @@
"outDir": ".",
"rootDir": ".",
"paths": {
"@nanoforge/common": ["../common"],
"@nanoforge/common/*": ["../common/*"]
"@nanoforge/common": ["../common"]
}
},
"exclude": ["node_modules", "dist", "test/**/*", "*.spec.ts"],
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/application/nanoforge-application.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import {
ApplicationContext,
type IAssetManagerLibrary,
type IComponentSystemLibrary,
type ILibrary,
type INetworkLibrary,
type IRunOptions,
} from "@nanoforge/common";
import { ApplicationContext } from "@nanoforge/common/src/context/contexts/application.context";

import { Core } from "../core/core";
import { ApplicationConfig } from "./application-config";
Expand Down
3 changes: 1 addition & 2 deletions packages/core/tsconfig.build.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,7 @@
"outDir": ".",
"rootDir": ".",
"paths": {
"@nanoforge/common": ["../common"],
"@nanoforge/common/*": ["../common/*"]
"@nanoforge/common": ["../common"]
}
},
"exclude": ["node_modules", "dist", "test/**/*", "*.spec.ts"],
Expand Down
4 changes: 3 additions & 1 deletion packages/ecs/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -267,6 +267,8 @@ src/**/*.js
src/**/*.d.ts

# pubilc directory
public/
lib/libecs.wasm
lib/index.d.ts
lib/index.js
compile_commands.json
emsdk/
9 changes: 4 additions & 5 deletions packages/ecs/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ SRC = wasm/SparseArray.cpp\

NAME := libecs

OUT_DIR = public
OUT_DIR = lib
JS_NAME = $(OUT_DIR)/$(NAME).js
HTML_NAME = $(OUT_DIR)/$(NAME).html
WASM_NAME = $(OUT_DIR)/$(NAME).wasm
Expand All @@ -23,7 +23,7 @@ OBJ = $(SRC:.cpp=.o)
%.o: %.cpp
$(CC) -c $< -o $@ $(CFLAGS)

all: $(WASM_NAME)
all: $(TS_NAME)

js: $(JS_NAME)

Expand Down Expand Up @@ -52,15 +52,14 @@ $(TS_NAME): $(OBJ)

clean:
$(RM) $(OBJ)
$(RM) -r $(OUT_DIR)
$(RM) $(JS_NAME) $(WASM_NAME) $(HTML_NAME) $(TS_NAME)

fclean: clean

tests: LDFLAGS += -s MODULARIZE=1 -s STANDALONE_WASM=1
tests: LDFLAGS += -s MODULARIZE=1
tests: $(OBJ)
@mkdir -p $(OUT_DIR)
$(CC) $(OBJ) $(LDFLAGS) -o $(JS_NAME)
$(CC) $(OBJ) $(LDFLAGS) --emit-tsd $(TS_NAME) -o $(JS_NAME)

re: fclean all

Expand Down
2 changes: 2 additions & 0 deletions packages/ecs/lib/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
export * from "./libecs";
export { default as Module } from "./libecs";
88 changes: 88 additions & 0 deletions packages/ecs/lib/libecs.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
// TypeScript bindings for emscripten-generated code. Automatically generated at compile time.
declare namespace RuntimeExports {
let HEAPF32: any;
let HEAPF64: any;
let HEAP_DATA_VIEW: any;
let HEAP8: any;
let HEAPU8: any;
let HEAP16: any;
let HEAPU16: any;
let HEAP32: any;
let HEAPU32: any;
let HEAP64: any;
let HEAPU64: any;
}
interface WasmModule {
}

export interface ClassHandle {
isAliasOf(other: ClassHandle): boolean;
delete(): void;
deleteLater(): this;
isDeleted(): boolean;
clone(): this;
}
export interface container extends ClassHandle {
size(): number;
get(_0: number): any | undefined | undefined;
push_back(_0?: any): void;
resize(_0: number, _1?: any): void;
set(_0: number, _1?: any): boolean;
}

export interface SparseArray extends ClassHandle {
setByCopy(_0: SparseArray): SparseArray;
setByMove(_0: SparseArray): SparseArray;
clear(): void;
empty(): boolean;
erase(_0: number): void;
size(): number;
resize(_0: number): void;
get_index(_0?: any): number;
get_const(_0: number): any | undefined;
get(_0: number): any | undefined;
insert_at(_0: number, _1?: any): any | undefined;
insert_at(_0: number, _1?: any): any | undefined;
set(_0: number, _1?: any): void;
}

export interface Entity extends ClassHandle {
get_id(): number;
}

export interface Registry extends ClassHandle {
spawn_entity(): Entity;
kill_entity(_0: Entity): void;
clear_entities(): void;
run_systems(): void;
clear_systems(): void;
entity_from_index(_0: number): Entity;
remove_system(_0: number): void;
max_entities(): number;
register_component(_0: any): SparseArray;
get_components_const(_0: any): SparseArray;
get_components(_0: any): SparseArray;
get_entity_component_const(_0: Entity, _1: any): any | undefined;
get_entity_component(_0: Entity, _1: any): any | undefined;
add_component(_0: Entity, _1: any): any | undefined;
remove_component(_0: Entity, _1: any): void;
add_system(_0: any): void;
}

interface EmbindModule {
container: {
new(): container;
};
SparseArray: {
new(): SparseArray;
};
Entity: {
new(_0: number): Entity;
};
Registry: {
new(): Registry;
};
}

export type MainModule = WasmModule & typeof RuntimeExports & EmbindModule;
export default function MainModuleFactory (options?: unknown): Promise<MainModule>;
Loading
Loading