sXg: Spectrum eXtended Graphics

Пейзажи и портреты

Postby jimbo_77 » Mon, 23.03.2015 13:05:53

Еще немного в палитре
Attachments
wizardry.jpg
Last edited by jimbo_77 on Tue, 28.04.2015 19:50:58, edited 1 time in total.
User avatar
jimbo_77
 
Posts: 55
Joined: Wed, 11.03.2015 17:31:18

Postby evovxn » Mon, 23.03.2015 23:42:33

jimbo_77, симпатично. Чем-то похоже на винрарную спековскую игру Myth - History in the Making. Вот бы её на TS-Conf перенести со спрайтами и тайлами!
User avatar
evovxn
 
Posts: 278
Joined: Thu, 14.11.2013 12:31:23
LOCATION: Kursk

Postby VBI » Tue, 24.03.2015 10:11:54

jimbo_77, по тайлам и спрайтам такая ситуация:
на тайл или на спрайт идёт одна палитра: 15 цветов + 1 фоновый, который будет прозрачным.
всего палитр у нас 16, и для тайлов/спрайтов они группируются в наборы по 4 штуки
все палитры общие
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby jimbo_77 » Tue, 24.03.2015 11:00:43

То есть в результате 16 тайлов по 16 цветов мы имеем используемую палитру в 256 отображаемых на экране цветов.
Поправте если я не правильно понял. Еще интересует вопрос по размерам тайлов, спрайтов. Есть ли ограничения 10х10 или 100х100 к примеру
EVOVXN. Да игры были шедевральные и Myth и Rex 1-2 в плане графического исполнения выше всяких похвал. Но мне кажется для zx были бы полезнее оригинальные проекты, способные заинтересовать, привлечь новых пользователей и продвинуть платформу.
User avatar
jimbo_77
 
Posts: 55
Joined: Wed, 11.03.2015 17:31:18

Postby VBI » Tue, 24.03.2015 13:05:38

один тайл - одна палитра, для одного слоя - не больше 4х палитр на экран. т.е. - палитра для земли юзается в тайлах земли, палитра для лестниц (дерево, к примеру) - на всяких деревянных тайлах :)
с размерами тайлов: тайл 8x8 точек, из них городи что угодно до от 1х1 до 64х64 тайла на один слой
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby TS-Labs » Tue, 24.03.2015 13:14:39

VBI wrote:для тайлов/спрайтов они группируются в наборы по 4 штуки

Только для тайлов. Спрайт имеет 4 бита палитрового селектора. Тайлы - 2 и 2 в общем селекторе для слоя (индивидуально для 2 слоев).
jimbo_77 wrote:Еще интересует вопрос по размерам тайлов, спрайтов.

Тайлы только 8х8 (в англоязычной литературе тайлы называют текстмодом, фактически так и есть - "символ" 8х8 пикс, "знакогенератор" из 4096 "символов"). Спрайты от 8х8 до 64х64, с шагом 8, по обеим осям независимо.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby jimbo_77 » Tue, 24.03.2015 13:36:13

По размерам более менее понятно, плясать надо от стандарта 8х8. Но как писал выше TS-Labs фон может быть к примеру 128 цветов, а остальная графика в спрайтах-тайлах как мы говорили только-что
User avatar
jimbo_77
 
Posts: 55
Joined: Wed, 11.03.2015 17:31:18

Postby VBI » Tue, 09.02.2016 18:07:44

Dyadya breeze, нужен твой рецепт готовки sXg для рс, желательно в виде исходника.
по компрессии не решалось ничо?
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby LessNick » Tue, 09.02.2016 23:46:51

По компрессии не решалось ничего. Формат уже как бы описывался, но приатачу сорцы loadsxg для Cli2. При желании не сложно допилить до плагина WC. Вприниципе я уже начинал его писать, но что-то не сраслося.

Есть утилита в консоль «bmp2sxg».
Attachments
sxgview.zip
(330.75 KiB) Downloaded 388 times
loadSxg.asm.zip
(4.13 KiB) Downloaded 383 times
bmp2sxg.zip
(130.31 KiB) Downloaded 394 times
(∩。•o•。)っ.゚☆。・ TS-Conf для PentEvo — это классический Pentagon 128k для тех кто хочет больше!
User avatar
LessNick
грей сашу — сашу грей
 
Posts: 975
Joined: Thu, 26.07.2012 15:00:53
WEBSITE: http://fishbone.untergrund.net/

Postby VBI » Wed, 10.02.2016 00:16:05

Спасибо!
хорошо бы получить любой исходник bmp2sxg, пусть даже на Perl ;)

User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby moroz1999 » Wed, 10.02.2016 00:27:41

Правильно ли я понимаю, что:
1. Палитра имеет нефиксированную длину, конец задается смещением.
2. Палитра два байта на цвет. По какой логике задаются цвета?
3. Пиксели - просто однобайтовый номер цвета в палитре, верно?

Я с tsconf не работал, не понимаю еще немного.
Если в заголовке указать 16ц, то палитра должна быть один байт на цвет, да?
User avatar
moroz1999
 
Posts: 1872
Joined: Wed, 01.08.2012 11:23:51

Postby LessNick » Wed, 10.02.2016 00:29:59

VBI wrote:хорошо бы получить любой исходник bmp2sxg, пусть даже на Perl


исходник на c, компилится gcc под bsd и win32, сцылко в пм
(∩。•o•。)っ.゚☆。・ TS-Conf для PentEvo — это классический Pentagon 128k для тех кто хочет больше!
User avatar
LessNick
грей сашу — сашу грей
 
Posts: 975
Joined: Thu, 26.07.2012 15:00:53
WEBSITE: http://fishbone.untergrund.net/

Postby LessNick » Wed, 10.02.2016 00:37:06

moroz1999 wrote:Правильно ли я понимаю, что:
1. Палитра имеет нефиксированную длину, конец задается смещением.


да, есть палитра для 16ц, и для 256ц

moroz1999 wrote:2. Палитра два байта на цвет. По какой логике задаются цвета?


Ну по той же какой и задумывал автор. Вообще, если цвета «выбиваются» из 555 палитры, то они «адаптируются», пример лога работы bmp2sxg:

Code: Select all
           No #      R   G   B        R   G   B        pentevo    xRRrrrGG gggBBbbb
BMP color   0[#00] [#00,#00,#FF] ->   0,  0, 24 ->   0, 24[#0018] 00000000 00011000
BMP color   1[#01] [#00,#00,#F4] ->   0,  0, 23 ->   0, 23[#0017] 00000000 00010111
BMP color   2[#02] [#00,#00,#E9] ->   0,  0, 22 ->   0, 22[#0016] 00000000 00010110
BMP color   3[#03] [#00,#00,#DF] ->   0,  0, 21 ->   0, 21[#0015] 00000000 00010101
BMP color   4[#04] [#00,#00,#D4] ->   0,  0, 20 ->   0, 20[#0014] 00000000 00010100
BMP color   5[#05] [#00,#00,#C9] ->   0,  0, 19 ->   0, 19[#0013] 00000000 00010011
BMP color   6[#06] [#00,#00,#BF] ->   0,  0, 18 ->   0, 18[#0012] 00000000 00010010
BMP color   7[#07] [#00,#00,#B4] ->   0,  0, 17 ->   0, 17[#0011] 00000000 00010001
BMP color   8[#08] [#00,#00,#AA] ->   0,  0, 16 ->   0, 16[#0010] 00000000 00010000
BMP color   9[#09] [#00,#00,#9F] ->   0,  0, 15 ->   0, 15[#000F] 00000000 00001111
BMP color  10[#0A] [#00,#00,#94] ->   0,  0, 14 ->   0, 14[#000E] 00000000 00001110
BMP color  11[#0B] [#00,#00,#8A] ->   0,  0, 13 ->   0, 13[#000D] 00000000 00001101
BMP color  12[#0C] [#00,#00,#7F] ->   0,  0, 12 ->   0, 12[#000C] 00000000 00001100
BMP color  13[#0D] [#00,#00,#75] ->   0,  0, 11 ->   0, 11[#000B] 00000000 00001011
BMP color  14[#0E] [#00,#00,#6A] ->   0,  0, 10 ->   0, 10[#000A] 00000000 00001010


Так же в bmp2sxg можно принудительно зарезать палитру до 64х цветов аля ATM-натюрель.

moroz1999 wrote:3. Пиксели - просто однобайтовый номер цвета в палитре, верно?


да, если режим 256ц. если режим 16ц, то 2 точки рядом по 4 бита.
(∩。•o•。)っ.゚☆。・ TS-Conf для PentEvo — это классический Pentagon 128k для тех кто хочет больше!
User avatar
LessNick
грей сашу — сашу грей
 
Posts: 975
Joined: Thu, 26.07.2012 15:00:53
WEBSITE: http://fishbone.untergrund.net/

Postby g0blinish » Wed, 10.02.2016 04:55:23

breeze wrote:По компрессии не решалось ничего.


надо бы.
[x] No Screenshot
User avatar
g0blinish
Упырь говнофорума
 
Posts: 3641
Joined: Tue, 18.06.2013 10:59:01

Postby LessNick » Wed, 10.02.2016 12:16:05

g0blinish wrote:надо бы.


Ну поскольку очень часто встречаются длинные последовательности, то имхо RLE прикрутить проще всего.
(∩。•o•。)っ.゚☆。・ TS-Conf для PentEvo — это классический Pentagon 128k для тех кто хочет больше!
User avatar
LessNick
грей сашу — сашу грей
 
Posts: 975
Joined: Thu, 26.07.2012 15:00:53
WEBSITE: http://fishbone.untergrund.net/

Postby g0blinish » Wed, 10.02.2016 13:29:16

breeze wrote:то имхо RLE прикрутить проще всего.


можыд, zx7?
[x] No Screenshot
User avatar
g0blinish
Упырь говнофорума
 
Posts: 3641
Joined: Tue, 18.06.2013 10:59:01

Postby moroz1999 » Thu, 11.02.2016 01:50:09

breeze wrote:Ну по той же какой и задумывал автор. Вообще, если цвета «выбиваются» из 555 палитры, то они «адаптируются», пример лога работы bmp2sxg:

Спасибо! Разобрался, просто раньше не работал с 555.
User avatar
moroz1999
 
Posts: 1872
Joined: Wed, 01.08.2012 11:23:51

Postby moroz1999 » Thu, 11.02.2016 02:11:49

Итак, саппорт sXg на ZX-Art готов.
Излагаю мнение по поводу имеющихся работ:
1. baseconf-юзеры (deathsoft, например), выбрали себе 16 colors bmp в качестве формата хранения. Считаю, что работы под baseconf стоит оставить в этом самом bmp, так как у них есть просмотрщик на реале, к которому они привыки.
2. авторы сами решают, использовать sXg или bmp. У авторов приоритет выше, это их работы.
Согласны с такой постановкой?
User avatar
moroz1999
 
Posts: 1872
Joined: Wed, 01.08.2012 11:23:51

Postby moroz1999 » Thu, 11.02.2016 02:15:34

http://zxart.ee/eng/authors/b/breeze/vd14f/ - breeze, эту работу я для пробы заменил на sXg. Всё правильно выглядит?
User avatar
moroz1999
 
Posts: 1872
Joined: Wed, 01.08.2012 11:23:51

Postby moroz1999 » Thu, 11.02.2016 02:20:43

И еще уточнение. У tsconf бордер есть? :)
User avatar
moroz1999
 
Posts: 1872
Joined: Wed, 01.08.2012 11:23:51

Postby TS-Labs » Thu, 11.02.2016 02:39:37

Есть. Полный видеорастр (то, что попадает в монитор и не закрашено гасящими) - 360х288. Есть 4 размера пиксельной области 256х192, 320х200, 320х240, остальное по краям бордюр. В 360х288 бордюра нет.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby LessNick » Thu, 11.02.2016 13:39:08

moroz1999 wrote:Всё правильно выглядит?


Ну скажем так. Я не знаю что за картинку ты брал за основу, но вообще по идее оно выглядит не правильно. Ибо изначально это рисовалось под Pentagon SL 2.2 со стандартными 16 ZX цветами. Подозреваю, что таки мой лейм ибо в bramble я не проверил и также искаженная палитра.

По сему должна быть цвета #00 -> #7f -> #ff без всяких левых примесей.

Вот собственно правильный файл и выглядит так:

Image

Расширение sxg запрещено администратором.

И да, работы в SXG уже можно заливать на ZXArt? :vodka:
Attachments
vd14f_vallentine_day.sxg.zip
(5.21 KiB) Downloaded 357 times
(∩。•o•。)っ.゚☆。・ TS-Conf для PentEvo — это классический Pentagon 128k для тех кто хочет больше!
User avatar
LessNick
грей сашу — сашу грей
 
Posts: 975
Joined: Thu, 26.07.2012 15:00:53
WEBSITE: http://fishbone.untergrund.net/

Postby moroz1999 » Thu, 11.02.2016 14:01:03

Давай сначала разберемся с палитрой, тогда будем заливать остальные работы, иначе мне кэш файловый нужно будет как-то сбрасывать ручками для этих работ.
Я брал sXg из bramble.
1. У тебя на картинке есть бордер зеленый. Это обычный зеленый бордер, правильно?
2. Возможно, я из RGB555 неправильно делаю RGB888. Очень возможно, я перепроверю, что в исходном sXg, и что получается у меня.

Посмотри, пожалуйста - я правильно понимаю, что зеленый цвет в палитре этого sXg файла идет первым (номер 0), его значение #01C5, то есть 0000000111000101 ?
User avatar
moroz1999
 
Posts: 1872
Joined: Wed, 01.08.2012 11:23:51

Postby moroz1999 » Thu, 11.02.2016 14:08:28

Моя логика вычислений.

Если в RGB555 цвет 0000000111000101, то:
Синий 00101 = 5
Зеленый 01110 = 14
Красный 00000 = 0

Итого RGB888:
Синий 5/24 * 255 = 53 = #34
Зеленый 14/24 * 255 = 148 = #94
Красный 0/14 * 255 = 0 = #0

Итого RGB888= #009434. На картинке пипеткой можно намерять #009535, тут погрешность может быть мелкая.
User avatar
moroz1999
 
Posts: 1872
Joined: Wed, 01.08.2012 11:23:51

Postby LessNick » Thu, 11.02.2016 14:08:35

moroz1999 wrote:Давай сначала разберемся с палитрой,


Если ты брал из bramble, тогда понятно там палитра тоже была искаженная.

moroz1999 wrote:1. У тебя на картинке есть бордер зеленый. Это обычный зеленый бордер, правильно?


нет, эту картинку я уже переделал под 360x288x16 здесь нет бордера вообще!

moroz1999 wrote:2. Возможно, я из RGB555 неправильно делаю RGB888


Не думаю, скорее всего проблема в изначально неверной палитре у меня. Перезалей файл SXG что я приатачил выше проверь что получилось.

Вот лог преобразования bmp2sxg:

Code: Select all
           No #      R   G   B        R   G   B        pentevo    xRRrrrGG gggBBbbb
BMP color   0[#00] [#FF,#00,#FF] ->  24,  0, 24 ->  96, 24[#6018] 01100000 00011000
BMP color   1[#01] [#7F,#00,#7F] ->  12,  0, 12 ->  48, 12[#300C] 00110000 00001100
BMP color   2[#02] [#00,#00,#FF] ->   0,  0, 24 ->   0, 24[#0018] 00000000 00011000
BMP color   3[#03] [#00,#00,#7F] ->   0,  0, 12 ->   0, 12[#000C] 00000000 00001100
BMP color   4[#04] [#00,#FF,#FF] ->   0, 24, 24 ->   3, 24[#0318] 00000011 00011000
BMP color   5[#05] [#00,#7F,#7F] ->   0, 12, 12 ->   1,140[#018C] 00000001 00000000
BMP color   6[#06] [#FF,#FF,#FF] ->  24, 24, 24 ->  99, 24[#6318] 01100011 00011000
BMP color   7[#07] [#00,#FF,#00] ->   0, 24,  0 ->   3,  0[#0300] 00000011 00000000
BMP color   8[#08] [#00,#7F,#00] ->   0, 12,  0 ->   1,128[#0180] 00000001 00000000
BMP color   9[#09] [#FF,#FF,#00] ->  24, 24,  0 ->  99,  0[#6300] 01100011 00000000
BMP color  10[#0A] [#7F,#7F,#00] ->  12, 12,  0 ->  49,128[#3180] 00110001 00000000
BMP color  11[#0B] [#FF,#00,#00] ->  24,  0,  0 ->  96,  0[#6000] 01100000 00000000
BMP color  12[#0C] [#7F,#00,#00] ->  12,  0,  0 ->  48,  0[#3000] 00110000 00000000
BMP color  13[#0D] [#00,#00,#00] ->   0,  0,  0 ->   0,  0[#0000] 00000000 00000000
(∩。•o•。)っ.゚☆。・ TS-Conf для PentEvo — это классический Pentagon 128k для тех кто хочет больше!
User avatar
LessNick
грей сашу — сашу грей
 
Posts: 975
Joined: Thu, 26.07.2012 15:00:53
WEBSITE: http://fishbone.untergrund.net/

PreviousNext

Return to Graphics

Who is online

Users browsing this forum: No registered users and 1 guest

x