Various bug fixes + Material setters
This commit is contained in:
parent
e35cca1830
commit
f5c912c489
5 changed files with 53 additions and 22 deletions
40
material.go
40
material.go
|
|
@ -15,7 +15,7 @@ type GridColor struct {
|
|||
func (grid GridColor) GetColor(p Vector3) Vector3 {
|
||||
ix := int(math.Floor(p.X / grid.size))
|
||||
iy := int(math.Floor(p.Y / grid.size))
|
||||
iz := int(math.Floor(p.Z / grid.size))
|
||||
iz := int(math.Floor(p.Z/grid.size)) * 0
|
||||
|
||||
if (ix+iy+iz)%2 == 0 {
|
||||
return grid.color1.GetColor(p)
|
||||
|
|
@ -37,14 +37,14 @@ type Material struct {
|
|||
refractIndice float64
|
||||
}
|
||||
|
||||
func DefaultMaterial(ambiantColor Color) Material {
|
||||
func DefaultMaterial(diffuseColor Color) Material {
|
||||
return Material{
|
||||
ambiantColor: ambiantColor,
|
||||
diffuseColor: Vector3{255, 255, 255},
|
||||
diffuseFac: 0.5,
|
||||
ambiantColor: Vector3{0, 0, 0},
|
||||
diffuseColor: diffuseColor,
|
||||
diffuseFac: 1,
|
||||
specularColor: Vector3{255, 255, 255},
|
||||
specularFac: 1.0,
|
||||
specularExp: 32.0,
|
||||
specularFac: 2,
|
||||
specularExp: 35.0,
|
||||
reflectanceFac: 0.0,
|
||||
reflectanceTint: Vector3{1.0, 1.0, 1.0},
|
||||
refractFac: 0.0,
|
||||
|
|
@ -67,6 +67,32 @@ func MixMat(mat1 Material, mat2 Material, t float64, p Vector3) Material {
|
|||
}
|
||||
}
|
||||
|
||||
// Setters
|
||||
|
||||
func ChangeAmbiantColor(m *Material, newAmbiantColor Color) {
|
||||
m.ambiantColor = newAmbiantColor
|
||||
}
|
||||
|
||||
func ChangeDiffuseColor(m *Material, newDiffuseColor Color) {
|
||||
m.diffuseColor = newDiffuseColor
|
||||
}
|
||||
|
||||
func ChangeSpecularColor(m *Material, newSpecularColor Color) {
|
||||
m.specularColor = newSpecularColor
|
||||
}
|
||||
|
||||
func ChangeDiffuseFac(m *Material, newDiffuseFac float64) {
|
||||
m.diffuseFac = newDiffuseFac
|
||||
}
|
||||
|
||||
func ChangeSpecularFac(m *Material, newSpecularFac float64) {
|
||||
m.specularFac = newSpecularFac
|
||||
}
|
||||
|
||||
func ChangeSpecularExp(m *Material, newSpecularExp float64) {
|
||||
m.specularExp = newSpecularExp
|
||||
}
|
||||
|
||||
// Colors
|
||||
|
||||
var RED = Vector3{255, 0, 0}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue