forked from LeenkxTeam/LNXSDK
		
	Merge pull request 'main' (#103) from Onek8/LNXSDK:main into main
Reviewed-on: LeenkxTeam/LNXSDK#103
This commit is contained in:
		@ -54,6 +54,22 @@ class App {
 | 
			
		||||
		if (Scene.active == null || !Scene.active.ready) return;
 | 
			
		||||
		
 | 
			
		||||
		iron.system.Time.update();
 | 
			
		||||
		
 | 
			
		||||
		if (lastw == -1) {
 | 
			
		||||
			lastw = App.w();
 | 
			
		||||
			lasth = App.h();
 | 
			
		||||
		}
 | 
			
		||||
		if (lastw != App.w() || lasth != App.h()) {
 | 
			
		||||
			if (onResize != null) onResize();
 | 
			
		||||
			else {
 | 
			
		||||
				if (Scene.active != null && Scene.active.camera != null) {
 | 
			
		||||
					Scene.active.camera.buildProjection();
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		lastw = App.w();
 | 
			
		||||
		lasth = App.h();
 | 
			
		||||
		
 | 
			
		||||
		if (pauseUpdates) return;
 | 
			
		||||
 | 
			
		||||
		#if lnx_debug
 | 
			
		||||
@ -98,22 +114,6 @@ class App {
 | 
			
		||||
		for (cb in endFrameCallbacks) cb();
 | 
			
		||||
		updateTime = kha.Scheduler.realTime() - startTime;
 | 
			
		||||
		#end
 | 
			
		||||
 | 
			
		||||
		// Rebuild projection on window resize
 | 
			
		||||
		if (lastw == -1) {
 | 
			
		||||
			lastw = App.w();
 | 
			
		||||
			lasth = App.h();
 | 
			
		||||
		}
 | 
			
		||||
		if (lastw != App.w() || lasth != App.h()) {
 | 
			
		||||
			if (onResize != null) onResize();
 | 
			
		||||
			else {
 | 
			
		||||
				if (Scene.active != null && Scene.active.camera != null) {
 | 
			
		||||
					Scene.active.camera.buildProjection();
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		lastw = App.w();
 | 
			
		||||
		lasth = App.h();
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	static function render(frames: Array<kha.Framebuffer>) {
 | 
			
		||||
 | 
			
		||||
@ -887,7 +887,7 @@ class Scene {
 | 
			
		||||
						var ptype: String = t.props[i * 3 + 1];
 | 
			
		||||
						var pval: Dynamic = t.props[i * 3 + 2];
 | 
			
		||||
 | 
			
		||||
						if (StringTools.endsWith(ptype, "Object") && pval != "") {
 | 
			
		||||
						if (StringTools.endsWith(ptype, "Object") && pval != "" && pval != null) {
 | 
			
		||||
							Reflect.setProperty(traitInst, pname, Scene.active.getChild(pval));
 | 
			
		||||
						} else if (ptype == "TSceneFormat" && pval != "") {
 | 
			
		||||
							Data.getSceneRaw(pval, function (r: TSceneFormat) {
 | 
			
		||||
 | 
			
		||||
@ -62,7 +62,7 @@ class DrawStringNode extends LogicNode {
 | 
			
		||||
 | 
			
		||||
	override function get(from: Int): Dynamic {
 | 
			
		||||
 | 
			
		||||
		return from == 1 ? RenderToTexture.g.font.height(RenderToTexture.g.fontSize) : RenderToTexture.g.font.width(RenderToTexture.g.fontSize, string);
 | 
			
		||||
	
 | 
			
		||||
		return from == 1 ? RenderToTexture.g.font.width(RenderToTexture.g.fontSize, string) : RenderToTexture.g.font.height(RenderToTexture.g.fontSize);
 | 
			
		||||
			
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -281,7 +281,7 @@ class DebugConsole extends Trait {
 | 
			
		||||
					function drawObjectNameInList(object: iron.object.Object, selected: Bool) {
 | 
			
		||||
						var _y = ui._y;
 | 
			
		||||
 | 
			
		||||
						if (object.parent.name == 'Root')
 | 
			
		||||
						if (object.parent.name == 'Root' && object.raw == null)
 | 
			
		||||
							ui.text(object.uid+'_'+object.name+' ('+iron.Scene.active.raw.world_ref+')');
 | 
			
		||||
						else
 | 
			
		||||
							ui.text(object.uid+'_'+object.name);
 | 
			
		||||
 | 
			
		||||
@ -10,7 +10,7 @@ class SetCameraStartEndNode(LnxLogicTreeNode):
 | 
			
		||||
    
 | 
			
		||||
    def remove_extra_inputs(self, context):
 | 
			
		||||
        while len(self.inputs) > 2:
 | 
			
		||||
                self.inputs.remove(self.inputs[-1])
 | 
			
		||||
            self.inputs.remove(self.inputs[-1])
 | 
			
		||||
        if self.property0 == 'Start':
 | 
			
		||||
            self.add_input('LnxFloatSocket', 'Start')
 | 
			
		||||
        if self.property0 == 'End':
 | 
			
		||||
 | 
			
		||||
@ -71,7 +71,7 @@ class DrawTextAreaStringNode(LnxLogicTreeNode):
 | 
			
		||||
        layout.prop(self, 'property2')
 | 
			
		||||
 | 
			
		||||
    def get_replacement_node(self, node_tree: bpy.types.NodeTree):
 | 
			
		||||
        if self.lnx_version not in (0, 2):
 | 
			
		||||
        if self.lnx_version not in (0, 1, 2):
 | 
			
		||||
            raise LookupError()
 | 
			
		||||
            
 | 
			
		||||
        return NodeReplacement.Identity(self)
 | 
			
		||||
@ -17,15 +17,15 @@ class DrawStringNode(LnxLogicTreeNode):
 | 
			
		||||
        at the anchor point.
 | 
			
		||||
 | 
			
		||||
    @output Out: Activated after the string has been drawn.
 | 
			
		||||
    @output Height: String Height.
 | 
			
		||||
    @output Width: String Width.
 | 
			
		||||
    @output Height: String Height.
 | 
			
		||||
 | 
			
		||||
    @see [`kha.graphics2.Graphics.drawString()`](http://kha.tech/api/kha/graphics2/Graphics.html#drawString).
 | 
			
		||||
    """
 | 
			
		||||
    bl_idname = 'LNDrawStringNode'
 | 
			
		||||
    bl_label = 'Draw String'
 | 
			
		||||
    lnx_section = 'draw'
 | 
			
		||||
    lnx_version = 2
 | 
			
		||||
    lnx_version = 3
 | 
			
		||||
 | 
			
		||||
    def lnx_init(self, context):
 | 
			
		||||
        self.add_input('LnxNodeSocketAction', 'Draw')
 | 
			
		||||
@ -38,11 +38,11 @@ class DrawStringNode(LnxLogicTreeNode):
 | 
			
		||||
        self.add_input('LnxFloatSocket', 'Angle')
 | 
			
		||||
 | 
			
		||||
        self.add_output('LnxNodeSocketAction', 'Out')
 | 
			
		||||
        self.add_output('LnxFloatSocket', 'Height')
 | 
			
		||||
        self.add_output('LnxFloatSocket', 'Width')
 | 
			
		||||
        self.add_output('LnxFloatSocket', 'Height')
 | 
			
		||||
 | 
			
		||||
    def get_replacement_node(self, node_tree: bpy.types.NodeTree):
 | 
			
		||||
        if self.lnx_version not in (0, 1):
 | 
			
		||||
        if self.lnx_version not in (0, 1, 2):
 | 
			
		||||
            raise LookupError()
 | 
			
		||||
            
 | 
			
		||||
        return NodeReplacement.Identity(self)
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user