|
Здравствуйте Гость ( Вход | Регистрация ) Доступ из РоссииДля сохранения достпа из России к сайту и форуму GBX
|
||||||||||||||||||||
| ElVovan |
Воскресенье, 17 июня 2007, 23:34
Отправлено
#1
|
![]() Фанат ![]() ![]() ![]() Группа: Пользователи Сообщений: 118 Регистрация: 02 мая. 2007 Из: Санкт-Петербург Пользователь №: 22 080 ![]() ![]() |
Что-то в сети негусто информации по спрайтам, ни в одном из туториалов ничего не нашёл, ни в дабл.ко.нз, ни в туториале ЛирыНуны, ни в девсцене.
Может кто может рассказать про программирование спрайтов на ДС или дать ссылку на полезный документ.... -------------------- |
![]() ![]() ![]() |
Ответов
| ElVovan |
Вторник, 26 июня 2007, 23:41
Отправлено
#2
|
![]() Фанат ![]() ![]() ![]() Группа: Пользователи Сообщений: 118 Регистрация: 02 мая. 2007 Из: Санкт-Петербург Пользователь №: 22 080 ![]() ![]() |
Аааахх.... Не работает почему-то....
CODE #include<nds.h> #include<string.h> u8 redTile[64] = //Это тайл, которым заполняется экран { 1,1,1,1,1,1,1,1, 1,2,2,2,2,2,2,1, 1,2,2,2,2,2,2,1, 1,2,2,2,2,2,2,1, 1,2,2,2,2,2,2,1, 1,2,2,2,2,2,2,1, 1,2,2,2,2,2,2,1, 1,1,1,1,1,1,1,1 }; u8 greenTile[64] = //А это теперь спрайт { 3,3,3,3,3,3,3,3, 3,4,4,4,4,4,4,3, 3,4,5,5,5,5,4,3, 3,4,5,5,5,5,4,3, 3,4,5,5,5,5,4,3, 3,4,5,5,5,5,4,3, 3,4,4,4,4,4,4,3, 3,3,3,3,3,3,3,3 }; int main(){ int id; SpriteEntry *spriteEntry = new SpriteEntry[128]; SpriteRotation *spriteRotation = (SpriteRotation*)spriteEntry; // Дальше часть кода не трогаем т.к. заполнение тайлами работает нормально REG_POWERCNT = POWER_ALL_2D; DISPLAY_CR = MODE_0_2D | DISPLAY_BG0_ACTIVE; BG0_CR = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(0) | BG_TILE_BASE(1); VRAM_A_CR = VRAM_ENABLE | VRAM_A_MAIN_BG; BG_PALETTE[1] = RGB15(31,0,0); BG_PALETTE[2] = RGB15(0,31,0); SPRITE_PALETTE[3]=RGB15(0,0,31);//Заполняем SPRITE_PALETTE[4]=RGB15(0,31,31);//палитру SPRITE_PALETTE[5]=RGB15(31,31,31);//для спрайта memcpy((void*)BG_TILE_RAM(1), redTile, 64); memcpy((void*)(BG_TILE_RAM(1)+64), greenTile, 64); for(int i=0;i<32*32;i++){ (*(unsigned short*)(void*)(BG_MAP_RAM(0)+i*2))=0; } // Вот оно и заполнилось тайлами id=8; //Идентификатор, насколько я понял он произволен //Далее идёт начальная инициализация, скопировано с мануала for (int i = 0; i < 128; i++) { spriteEntry[i].attribute[0] = ATTR0_DISABLED; spriteEntry[i].attribute[1] = 0; spriteEntry[i].attribute[2] = 0; } for (int i = 0; i < 32; i++) { spriteRotation[i].hdx = 256; spriteRotation[i].hdy = 0; spriteRotation[i].vdx = 0; spriteRotation[i].vdy = 256; } //Конец инициализации //Устанавливаем атрибуты спрайта spriteEntry[0].attribute[0] = ATTR0_COLOR_256 | ATTR0_ROTSCALE | 128; spriteEntry[0].attribute[1] = ATTR1_ROTDATA(0) | ATTR1_SIZE_64 | 96; spriteEntry[0].attribute[2] = id; //Установили dmaCopy(greenTile, &SPRITE_GFX[id * 16], 64); //Копируем спрайтик DC_FlushAll();//Обновляем (updateOAM) dmaCopy(spriteEntry,OAM, 128*sizeof(SpriteEntry));//Обновляем (updateOAM) while(1); return(0); } -------------------- |
Posts in this topic
ElVovan Спрайты Воскресенье, 17 июня 2007, 23:34
PokePerevod http://www.palib.info/wiki/doku.php?id=day4
...это... Понедельник, 18 июня 2007, 11:05
ElVovan Блин, я не использую палиб и не такой крутой прогр... Понедельник, 18 июня 2007, 11:15
PokePerevod
Вот и здря... :)
...palib как раз для не крутых п... Понедельник, 18 июня 2007, 11:36
PokePerevod мне почему-то кажется, что ты забыл "разрешит... Среда, 27 июня 2007, 11:39
ElVovan Что-то оно не заработало с этой дополнительной опц... Четверг, 28 июня 2007, 19:57
PokePerevod
в 4bit'ном режиме (0-15 цветов) цвет под номе... Пятница, 29 июня 2007, 16:52
Puyo Puyo Хочешь от всех си`шных библиотек отказаться? Хардк... Пятница, 29 июня 2007, 13:23
ElVovan Нет, от библиотек, в которых реализованы ANSI/ISO ... Суббота, 30 июня 2007, 13:27
PokePerevod
..\devkitPro\libnds\include... Суббота, 30 июня 2007, 15:03
ElVovan Название переменной channel мне ни о чём не говори... Суббота, 30 июня 2007, 15:32
PokePerevod
число от 0 до 3 ;)
читай главу "DMA Transfer... Суббота, 30 июня 2007, 16:13
ElVovan Чёрт.... Спрайт заработал, бэкграунд исчез... И с ... Воскресенье, 01 июля 2007, 23:30
ElVovan Вот чуток разобрался, с цветом всё ок. А с одновре... Понедельник, 02 июля 2007, 22:02![]() ![]() |
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
| Упрощённая версия | Сейчас: Ср., 28 окт. 2026, 11:09 |

Воскресенье, 17 июня 2007, 23:34


















