geom
This commit is contained in:
parent
8605b93909
commit
e20381d55d
|
@ -5,27 +5,14 @@
|
||||||
# 0000000 000 000 0000000 00000000
|
# 0000000 000 000 0000000 00000000
|
||||||
|
|
||||||
log = require '/Users/kodi/s/ko/js/tools/log'
|
log = require '/Users/kodi/s/ko/js/tools/log'
|
||||||
|
Material = require './material'
|
||||||
|
|
||||||
class Cage
|
class Cage
|
||||||
|
|
||||||
@cageMat = new THREE.MeshPhongMaterial
|
|
||||||
color: 0x880000
|
|
||||||
side: THREE.FrontSide
|
|
||||||
shading: THREE.SmoothShading
|
|
||||||
shininess: 10
|
|
||||||
emissive: 0x880000
|
|
||||||
emissiveIntensity: 0.02
|
|
||||||
|
|
||||||
@rasterMat = new THREE.MeshPhongMaterial
|
|
||||||
color: 0x880000
|
|
||||||
side: THREE.FrontSide
|
|
||||||
shading: THREE.SmoothShading
|
|
||||||
shininess: 20
|
|
||||||
|
|
||||||
constructor: (@size, gap) ->
|
constructor: (@size, gap) ->
|
||||||
Cage.gap = gap
|
Cage.gap = gap
|
||||||
geom = Cage.wallTiles @size, 'inside', 0
|
geom = Cage.wallTiles @size, 'inside', 0
|
||||||
@raster = new THREE.Mesh geom, Cage.rasterMat
|
@raster = new THREE.Mesh geom, Material.raster
|
||||||
@raster.translateX -0.5
|
@raster.translateX -0.5
|
||||||
@raster.translateY -0.5
|
@raster.translateY -0.5
|
||||||
@raster.translateZ -0.5
|
@raster.translateZ -0.5
|
||||||
|
@ -33,7 +20,7 @@ class Cage
|
||||||
world.scene.add @raster
|
world.scene.add @raster
|
||||||
|
|
||||||
geom = Cage.wallTiles @size, 'inside', Cage.gap
|
geom = Cage.wallTiles @size, 'inside', Cage.gap
|
||||||
@cage = new THREE.Mesh geom, Cage.cageMat
|
@cage = new THREE.Mesh geom, Material.plate
|
||||||
@cage.translateX -0.5
|
@cage.translateX -0.5
|
||||||
@cage.translateY -0.5
|
@cage.translateY -0.5
|
||||||
@cage.translateZ -0.5
|
@cage.translateZ -0.5
|
||||||
|
|
|
@ -6,8 +6,8 @@
|
||||||
|
|
||||||
Gear = require './gear'
|
Gear = require './gear'
|
||||||
Geom = require './geom'
|
Geom = require './geom'
|
||||||
Cage = require './cage'
|
|
||||||
Wire = require './wire'
|
Wire = require './wire'
|
||||||
|
Material = require './material'
|
||||||
|
|
||||||
class Generator extends Gear
|
class Generator extends Gear
|
||||||
|
|
||||||
|
@ -15,8 +15,8 @@ class Generator extends Gear
|
||||||
super face
|
super face
|
||||||
|
|
||||||
createMesh: ->
|
createMesh: ->
|
||||||
@mesh = new THREE.Mesh Geom.generator(), Cage.cageMat
|
@mesh = new THREE.Mesh Geom.generator(), Material.plate
|
||||||
@mesh.add new THREE.Mesh Geom.gear(), Cage.rasterMat
|
@mesh.add new THREE.Mesh Geom.gear(), Material.gear
|
||||||
@mesh.receiveShadow = true
|
@mesh.receiveShadow = true
|
||||||
|
|
||||||
activateWires: ->
|
activateWires: ->
|
||||||
|
|
1434
coffee/geom.coffee
1434
coffee/geom.coffee
File diff suppressed because it is too large
Load Diff
|
@ -18,8 +18,11 @@ module.exports =
|
||||||
create: ->
|
create: ->
|
||||||
|
|
||||||
s = world.size
|
s = world.size
|
||||||
{Gear,Generator,MotorCylinder,MotorGear,Face} = require '../items'
|
{Gear,Generator,MotorCylinder,MotorGear,Face,Wall} = require '../items'
|
||||||
# world.addObjectAtPos new Generator(Face.Z), 5, 5, 0
|
world.addObjectAtPos new Generator(Face.Z), 5, 7, 0
|
||||||
|
world.addObjectAtPos new Wall(), 6, 7, 0
|
||||||
|
world.addObjectAtPos new Wall(), 6, 7, 1
|
||||||
|
world.addObjectAtPos new Wall(), 6, 7, 2
|
||||||
|
|
||||||
world.addObjectAtPos new MotorCylinder(Face.Z), 4, 5, 1
|
world.addObjectAtPos new MotorCylinder(Face.Z), 4, 5, 1
|
||||||
world.addObjectAtPos new MotorGear(Face.Z), 4, 5, 0
|
world.addObjectAtPos new MotorGear(Face.Z), 4, 5, 0
|
||||||
|
|
|
@ -19,6 +19,12 @@ module.exports =
|
||||||
shading: THREE.SmoothShading
|
shading: THREE.SmoothShading
|
||||||
shininess: 20
|
shininess: 20
|
||||||
|
|
||||||
|
wall: new THREE.MeshPhongMaterial
|
||||||
|
color: 0x770000
|
||||||
|
side: THREE.FrontSide
|
||||||
|
shading: THREE.SmoothShading
|
||||||
|
shininess: 10
|
||||||
|
|
||||||
plate: new THREE.MeshPhongMaterial
|
plate: new THREE.MeshPhongMaterial
|
||||||
color: 0x880000
|
color: 0x880000
|
||||||
side: THREE.FrontSide
|
side: THREE.FrontSide
|
||||||
|
|
|
@ -8,34 +8,27 @@
|
||||||
Pos = require './lib/pos'
|
Pos = require './lib/pos'
|
||||||
Item = require './item'
|
Item = require './item'
|
||||||
Cage = require './cage'
|
Cage = require './cage'
|
||||||
|
Material = require './material'
|
||||||
|
|
||||||
class Wall extends Item
|
class Wall extends Item
|
||||||
|
|
||||||
@rasterMat = new THREE.MeshPhongMaterial
|
|
||||||
color: 0x770000
|
|
||||||
side: THREE.FrontSide
|
|
||||||
shading: THREE.SmoothShading
|
|
||||||
shininess: 10
|
|
||||||
|
|
||||||
isSpaceEgoistic: -> true
|
isSpaceEgoistic: -> true
|
||||||
|
|
||||||
constructor: ->
|
constructor: -> super
|
||||||
|
|
||||||
geom = Cage.wallTiles new Pos(1,1,1), 'outside', 0
|
createMesh: ->
|
||||||
geom.translate -0.5, -0.5, -0.5
|
geom = new THREE.BoxGeometry 1,1,1
|
||||||
@raster = new THREE.Mesh geom, Wall.rasterMat
|
@raster = new THREE.Mesh geom, Material.wall
|
||||||
@raster.receiveShadow = true
|
@raster.receiveShadow = true
|
||||||
@raster.castShadow = true
|
@raster.castShadow = true
|
||||||
|
|
||||||
geom = Cage.wallTiles new Pos(1,1,1), 'outside', Cage.gap
|
geom = Cage.wallTiles new Pos(1,1,1), 'outside', Cage.gap
|
||||||
geom.translate -0.5, -0.5, -0.5
|
geom.translate -0.5, -0.5, -0.5
|
||||||
@plates = new THREE.Mesh geom, Cage.cageMat
|
@plates = new THREE.Mesh geom, Material.plate
|
||||||
@plates.receiveShadow = true
|
@plates.receiveShadow = true
|
||||||
|
|
||||||
@mesh = new THREE.Object3D
|
@mesh = new THREE.Object3D
|
||||||
@mesh.add @raster
|
@mesh.add @raster
|
||||||
@mesh.add @plates
|
@mesh.add @plates
|
||||||
|
|
||||||
super
|
|
||||||
|
|
||||||
module.exports = Wall
|
module.exports = Wall
|
||||||
|
|
Loading…
Reference in New Issue
Block a user