Add base config and project format
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
package arm;
|
||||
|
||||
@:structInit class TConfigBase {
|
||||
// The locale should be specified in ISO 639-1 format: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
|
||||
// "system" is a special case that will use the system locale
|
||||
@:optional public var locale: String;
|
||||
// Window
|
||||
@:optional public var window_mode: Null<Int>; // window, fullscreen
|
||||
@:optional public var window_w: Null<Int>;
|
||||
@:optional public var window_h: Null<Int>;
|
||||
@:optional public var window_x: Null<Int>;
|
||||
@:optional public var window_y: Null<Int>;
|
||||
@:optional public var window_resizable: Null<Bool>;
|
||||
@:optional public var window_maximizable: Null<Bool>;
|
||||
@:optional public var window_minimizable: Null<Bool>;
|
||||
@:optional public var window_vsync: Null<Bool>;
|
||||
@:optional public var window_frequency: Null<Int>;
|
||||
@:optional public var window_scale: Null<Float>;
|
||||
// Render path
|
||||
@:optional public var rp_supersample: Null<Float>;
|
||||
@:optional public var rp_ssao: Null<Bool>;
|
||||
@:optional public var rp_ssr: Null<Bool>;
|
||||
@:optional public var rp_bloom: Null<Bool>;
|
||||
@:optional public var rp_motionblur: Null<Bool>;
|
||||
@:optional public var rp_gi: Null<Bool>;
|
||||
@:optional public var rp_vignette: Null<Float>;
|
||||
// Application
|
||||
@:optional public var version: String;
|
||||
@:optional public var sha: String; // Commit id
|
||||
@:optional public var recent_projects: Array<String>; // Recently opened projects
|
||||
@:optional public var bookmarks: Array<String>; // Bookmarked folders in browser
|
||||
@:optional public var plugins: Array<String>; // List of enabled plugins
|
||||
@:optional public var keymap: String; // Link to keymap file
|
||||
@:optional public var theme: String; // Link to theme file
|
||||
@:optional public var undo_steps: Null<Int>; // Number of undo steps to preserve
|
||||
@:optional public var camera_pan_speed: Null<Float>;
|
||||
@:optional public var camera_zoom_speed: Null<Float>;
|
||||
@:optional public var camera_rotation_speed: Null<Float>;
|
||||
@:optional public var zoom_direction: Null<Int>;
|
||||
@:optional public var wrap_mouse: Null<Bool>;
|
||||
@:optional public var show_asset_names: Null<Bool>;
|
||||
@:optional public var touch_ui: Null<Bool>;
|
||||
@:optional public var layout: Array<Int>;
|
||||
@:optional public var workspace: Null<Int>;
|
||||
@:optional public var server: String;
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package arm;
|
||||
|
||||
@:structInit class TProjectBaseFormat {
|
||||
@:optional public var version: String;
|
||||
@:optional public var assets: Array<String>; // texture_assets
|
||||
@:optional public var is_bgra: Null<Bool>; // Swapped red and blue channels for layer textures
|
||||
@:optional public var packed_assets: Array<TPackedAsset>;
|
||||
@:optional public var envmap: String; // Asset name
|
||||
@:optional public var envmap_strength: Null<Float>;
|
||||
@:optional public var camera_world: kha.arrays.Float32Array;
|
||||
@:optional public var camera_origin: kha.arrays.Float32Array;
|
||||
@:optional public var camera_fov: Null<Float>;
|
||||
}
|
||||
|
||||
@:structInit class TAsset {
|
||||
public var id: Int;
|
||||
public var name: String;
|
||||
public var file: String;
|
||||
}
|
||||
|
||||
@:structInit class TPackedAsset {
|
||||
public var name: String;
|
||||
public var bytes: haxe.io.Bytes;
|
||||
}
|
||||
|
||||
@:structInit class TSwatchColor {
|
||||
public var base: kha.Color;
|
||||
public var opacity: Float;
|
||||
public var occlusion: Float;
|
||||
public var roughness: Float;
|
||||
public var metallic: Float;
|
||||
public var normal: kha.Color;
|
||||
public var emission: Float;
|
||||
public var height: Float;
|
||||
public var subsurface: Float;
|
||||
}
|
||||
Reference in New Issue
Block a user