06 Note Drawing
In this chapter, we will implement drawing logic of Note.
Declaring
Declare note's skin sprite:
TypeScript
export const skin = defineSkin({
sprites: {
// ...
note: SkinSpriteName.NoteHeadCyan,
},
})JavaScript
export const skin = defineSkin({
sprites: {
// ...
note: SkinSpriteName.NoteHeadCyan,
},
})Drawing
Similar to play mode, we draw the note sprite in updateParallel callback.
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)
}
}