コード例 #1
0
ファイル: asteroidi.go プロジェクト: joonazan/go-opas
func TeeAsteroidi() {

	id := TeeEsine(vec2.Vector{0, 1}, vec2.Vector{1, 0.1}, 0)

	mid := muodolle.Varaa(id)
	muodot[mid] = Muoto{
		Pisteet: []vec2.Vector{
			{0, 0},
			{0.3, 2},
			{-0.4, 2.6},
			{-1.2, 2.3},
			{-2.5, 2.7},
			{-2.8, 2.1},
			{-2, 0.7},
			{-2, 0.4},
			{-1, 0.3},
			{-0.8, 0},
			{0, 0},
		},
		Väri:    Väri{1, 1, 1},
		Muunnos: vec2.Scale(0.1, 0.1).Mul(vec2.Translation(vec2.Vector{1, -1.5})),
	}

	//diskolle.Varaa(mid)

	pyörimiset[pyörimiselle.Varaa(id)] = 0.5
}
コード例 #2
0
ファイル: alus.go プロジェクト: joonazan/go-opas
func TeeAlus() {
	alus.ID = TeeEsine(vec2.Vector{}, vec2.Vector{}, 0)

	id := muodolle.Varaa(alus.ID)
	muodot[id] = Muoto{
		Pisteet: kolmionPisteet,
		Väri:    Väri{1, 1, 1},
		Muunnos: vec2.Translation(vec2.Vector{0, -0.06}),
	}

	alus.LiekinID = muodolle.Varaa(alus.ID)
}
コード例 #3
0
ファイル: piirto.go プロジェクト: joonazan/go-opas
func Piirrä() {
	for i, muoto := range muodot {

		muunnos := vec2.Rotation(kulmat[muodolle.Vanhemmat[i]]).Mul(muoto.Muunnos)
		muunnos = vec2.Translation(paikat[muodolle.Vanhemmat[i]]).Mul(muunnos)

		muunnetutPisteet := make([]vec2.Vector, len(muoto.Pisteet))
		for j, piste := range muoto.Pisteet {
			muunnetutPisteet[j] = muunnos.Transform(piste)
		}

		asetaVäri(muoto.Väri)
		for _, siirto := range []vec2.Vector{{0, 0}, {0, 2}, {0, -2}, {2, 0}, {-2, 0}} {
			piirräPisteetSiirrolla(muunnetutPisteet, siirto)
		}
	}
}
コード例 #4
0
ファイル: drawing_test.go プロジェクト: joonazan/sprite
func TestSpriteDrawer(_ *testing.T) {

	t := NewTestbed("displays rotating test image")

	spritedrawer := NewSpriteDrawer(t.window, 1)

	texcoord := Upload(t.image, spritedrawer.Texture, 0, 0, 0)
	sprite := Sprite{Image: texcoord}

	x := 0.0

	t.UntilClose(func() {

		transform := vec2.Translation(vec2.Vector{-float64(t.image.Rect.Max.X) / 2, -float64(t.image.Rect.Max.Y) / 2})
		transform = vec2.Rotation(x).Mul(transform)
		x += 0.01
		sprite.Transform = transform.To32()

		spritedrawer.Draw([]Sprite{sprite})
	})
}
コード例 #5
0
ファイル: alus.go プロジェクト: joonazan/go-opas
	"github.com/joonazan/vec2"
)

var alus Alus

type Alus struct {
	ID, LiekinID           int
	AikaAseenLaukeamisesta float64
}

var kolmionPisteet = []vec2.Vector{{0.1, 0}, {-0.1, 0}, {0, 0.2}, {0.1, 0}}

var Liekki = Muoto{
	Pisteet: kolmionPisteet,
	Väri:    Väri{1, 0.7, 0.3},
	Muunnos: vec2.Translation(vec2.Vector{0, -0.09}).Mul(vec2.Scale(0.4, 0.4).Mul(vec2.Rotation(math.Pi))),
}

func TeeAlus() {
	alus.ID = TeeEsine(vec2.Vector{}, vec2.Vector{}, 0)

	id := muodolle.Varaa(alus.ID)
	muodot[id] = Muoto{
		Pisteet: kolmionPisteet,
		Väri:    Väri{1, 1, 1},
		Muunnos: vec2.Translation(vec2.Vector{0, -0.06}),
	}

	alus.LiekinID = muodolle.Varaa(alus.ID)
}