2012-02-24 2 views
1

Мне было интересно, как установить холст для просмотра определенного пятна сетки?Центральная изометрическая карта в холсте?

Например, моя изометрическая карта использует координаты x: y. И когда я загружаю карту, то что-то с холста, около половины его. Поэтому я хочу установить центр камеры на центральную плиту карты. Так что вся сетка просматривается на холсте.

img.onload = function(){ 
tiles_wide = 18; 
tiles_long = 19; 

for (i=0;i<tiles_wide;i++){ //horizontal 

    for (j=0;j<tiles_long;j++){ // vertical 

    var x = (i-j)*(img.height/2); 
    var y = (i+j)*(img.height/4); 

    ctx.drawImage(img,x,y); 
     } 
    } 

} 

Надежда кто-то может помочь :)

ответ

0

при рисовании изображение, которое вы могли бы сделать х + (tiles_wide/2) * tilewidth и то же самое для у.

Все столкновения и игровая функция будут по-прежнему работать в правильных координатах, но вы будете рисовать со смещением, создающим иллюзию камеры.

Убедитесь, что вы рисуете только смещение и не устанавливаете эти «объекты» на смещение.

Также tilewidth var должен быть шириной плитки в пикселях. Это то, что вы получили после?

+0

Ах да, он отлично работает сейчас :) Спасибо! – Sir

Смежные вопросы