Skip to content

Commit 0234e01

Browse files
committed
Combine basic NIN functions to single file
This keeps the namespace and import tree clean, as single files with just one class definition like TextureInput and TextureOutput were a bit overkill.
1 parent a241ddf commit 0234e01

11 files changed

+96
-102
lines changed

nin/dasBoot/NIN.js

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
const Loader = require('./Loader');
2+
3+
class Input {
4+
constructor(node) {
5+
this.source = null;
6+
this.node = node;
7+
this.enabled = true;
8+
}
9+
10+
getValue() {
11+
if(!this.source) {
12+
return null;
13+
}
14+
return this.source.getValue();
15+
}
16+
}
17+
18+
class Output {
19+
constructor(node) {
20+
this.destination = null;
21+
this.node = node;
22+
}
23+
24+
setValue(value) {
25+
this.value = value;
26+
}
27+
28+
getValue() {
29+
return this.value;
30+
}
31+
}
32+
33+
class Node {
34+
constructor(id, options) {
35+
this.id = id;
36+
this.inputs = options.inputs || {};
37+
this.outputs = options.outputs || {};
38+
39+
for(var key in this.inputs) {
40+
this.inputs[key].node = this;
41+
}
42+
for(var key in this.outputs) {
43+
this.outputs[key].node = this;
44+
}
45+
46+
this.oldActive = false;
47+
this.active = false;
48+
}
49+
50+
resize() {
51+
}
52+
53+
render() {
54+
}
55+
56+
update() {
57+
}
58+
}
59+
60+
61+
class TextureInput extends Input {}
62+
63+
class TextureOutput extends Output {}
64+
65+
class TextureNode extends Node {
66+
constructor(id, options) {
67+
super(id, {
68+
inputs: {},
69+
outputs: {
70+
A: new TextureOutput()
71+
}
72+
});
73+
var that = this;
74+
this.texture = Loader.loadTexture(options.path);
75+
this.outputs.A.setValue(this.texture);
76+
}
77+
}
78+
79+
module.exports = TextureNode;
80+
81+
module.exports = {
82+
Input,
83+
Output,
84+
Node,
85+
TextureInput,
86+
TextureOutput,
87+
TextureNode,
88+
};

nin/dasBoot/RootNode.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
const Node = require('./node');
2-
const TextureInput = require('./TextureInput');
1+
const NIN = require('./NIN');
32

4-
class RootNode extends Node {
3+
class RootNode extends NIN.Node {
54
constructor(id, options) {
65
super(id, {
7-
inputs: {screen: new TextureInput()}
6+
inputs: {screen: new NIN.TextureInput()}
87
});
98

109
this.camera = new THREE.OrthographicCamera(-1, 1, 1, -1, 0, 1);

nin/dasBoot/ShaderNode.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
const Node = require('./node');
1+
const NIN = require('./NIN');
22

3-
class ShaderNode extends Node {
3+
class ShaderNode extends NIN.Node {
44
constructor(id, options) {
55
super(id, {
66
inputs: options.inputs,

nin/dasBoot/THREENode.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
const CameraController = require('./CameraController');
22
const Loader = require('./Loader');
3-
const Node = require('./node');
3+
const NIN = require('./NIN');
44

5-
class THREENode extends Node {
5+
class THREENode extends NIN.Node {
66
constructor(id, options) {
77
super(id, {
88
inputs: options.inputs,

nin/dasBoot/TextureInput.js

Lines changed: 0 additions & 3 deletions
This file was deleted.

nin/dasBoot/TextureNode.js

Lines changed: 0 additions & 19 deletions
This file was deleted.

nin/dasBoot/TextureOutput.js

Lines changed: 0 additions & 3 deletions
This file was deleted.

nin/dasBoot/bootstrap.js

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,7 @@ require('./lib/OBJLoader');
1111
require('./lib/RenderPass');
1212
require('./lib/ShaderPass');
1313

14-
const NIN = window['NIN'] = window['NIN'] || {};
15-
NIN.Input = require('./input');
16-
NIN.TextureInput = require('./TextureInput');
17-
18-
NIN.Output = require('./output');
19-
NIN.TextureOutput = require('./TextureOutput');
20-
21-
NIN.Node = require('./node');
22-
NIN.TextureNode = require('./TextureNode');
14+
const NIN = window['NIN'] = require('./NIN');
2315
NIN.RootNode = require('./RootNode');
2416
NIN.THREENode = require('./THREENode');
2517
NIN.ShaderNode = require('./ShaderNode');

nin/dasBoot/input.js

Lines changed: 0 additions & 16 deletions
This file was deleted.

nin/dasBoot/node.js

Lines changed: 0 additions & 28 deletions
This file was deleted.

nin/dasBoot/output.js

Lines changed: 0 additions & 16 deletions
This file was deleted.

0 commit comments

Comments
 (0)