Код должен рисовать на холсте круг, но этого не происходит, холст только заливается черным.
function drawBox(position, width, height, angle) {
console.log(position, width, height, angle, FRAME)
let angleInRadians = (angle * Math.PI) / 180
FRAME.save()
FRAME.strokeStyle = '#fff'
FRAME.translate(position.x, position.y)
FRAME.rotate(angleInRadians)
FRAME.fillStyle = '#000'
FRAME.fillRect(-width / 2, -height / 2, width, height)
FRAME.restore()
}
function setup() {
body = new RigidBody()
body.initBoxBody(100, 100, new Vector(100, 100), false, 1)
ENTITIES.push({RigidBody: body})
}
function DrawingSystem() {
for (let entity of ENTITIES) {
if (!('RigidBody' in entity)) continue
let body = entity.RigidBody
// circle
if (body.shapeType == 0) {
drawCircle(body.position, body.radius)
}
// box
if (body.shapeType == 1) {
drawBox(body.position, body.width, body.height, body.rotation)
}
}
}
В консоль выводится вектор позиции, радиус и canvas, поэтому все аргументы и canvas заданы правильно. Размеры холста 1920*1080, их тоже выводил в консоль, все выводится правильно.