Exemple #1
0
func NewFloor(shader loader.Shader, reflected ...Drawable) Drawable {
	glctx := shader.Context()
	floor := NewStaticShape(glctx)
	floor.vertices = floorVertices
	floor.normals = floorNormals
	floor.Buffer()
	flipped := mgl.Scale3D(1, -1, 1)
	return &Floor{
		Node: Node{
			Shape:     floor,
			transform: &flipped,
			shader:    shader,
		},
		reflected: reflected,
	}
}
Exemple #2
0
func NewSkybox(shader loader.Shader, texture gl.Texture) Drawable {
	glctx := shader.Context()
	skyboxShape := NewStaticShape(glctx)
	skyboxShape.vertices = skyboxVertices
	skyboxShape.indices = skyboxIndices
	skyboxShape.Buffer()
	skyboxShape.Texture = texture

	skybox := &Skybox{
		Node: Node{
			Shape:  skyboxShape,
			shader: shader,
		},
	}

	return skybox
}