06 音符绘制
在本章中,我们将实现音符绘制逻辑。
声明
声明音符的皮肤精灵:
TypeScript
export const skin = defineSkin({
sprites: {
// ...
note: SkinSpriteName.NoteHeadCyan,
},
})JavaScript
export const skin = defineSkin({
sprites: {
// ...
note: SkinSpriteName.NoteHeadCyan,
},
})绘制
与游玩模式类似,我们在 updateParallel 回调函数中绘制音符精灵。
TypeScript
export class Note extends Archetype {
// ...
updateParallel() {
const y = Math.unlerp(this.visualTime.min, this.visualTime.max, time.scaled)
const layout = Rect.one.mul(note.radius).scale(1, -1).translate(0, y)
skin.sprites.note.draw(layout, [1, -this.targetTime], 1)
}
}JavaScript
export class Note extends Archetype {
// ...
updateParallel() {
const y = Math.unlerp(this.visualTime.min, this.visualTime.max, time.scaled)
const layout = Rect.one.mul(note.radius).scale(1, -1).translate(0, y)
skin.sprites.note.draw(layout, [1, -this.targetTime], 1)
}
}