Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.10;
Скачать: CL | DM;

Вниз

А не устраивать ли нам небольшие конкурсы по кодингу? (ч.4)   Найти похожие ветки 

 
Darth   (2005-05-16 14:10) [40]

Так народ. Размер файла когда он учитывается, то после рекомпилинга. Тоесть UPX это только чтобы качать меньше. Сжатый файл разжимается и оценивается расжатый.

Про демосцену заинтересовал. Мне аж захотелось оживить проектик свой по написанию демосцены в делфе :)


 
dRake ©   (2005-05-16 19:42) [41]

2 Sapersky

>Ты их все используешь? :)
>Загрузка bmp, tga - это "копейки". dds тоже по идее должно быть >не сложно и не много, т.к. там surface в "родном" формате, с >мипмэпами, может быть. png - где-то видел DLL в 50 кб. jpeg - от >70 (JpegObj из KOL) до 300 кб (Intel Jpeg Library - есть .>оптимизация под разные процессоры, поэтому работает заметно >быстрее).

Допустим я убью пару недель на собирание спецификаций с библиотеками и реализацию загрузчика... только нафик это нужно-то, причем я же не только загрузчик из этой либы пользую =)
К вопросу о скорости - загрузчик из D3DX конкретно делает ручную загрузку, особенно на нелокабельных текстурах. И еще - загрузчик D3DX умеет делать Dithering и разные варианты фильтрации...
Да и mipmap"ы cоздает (это мен не нужно, но все же ;)

>Конвертация форматов достаточно просто делается через FastLIB, .>разве что альфу нужно добавить...

Конвертацию я уже написал для всевозможных форматов,
когда грузил ручками ;)


 
Kerk ©   (2005-05-16 19:44) [42]

Darth   (16.05.05 14:10) [40]
Так народ. Размер файла когда он учитывается, то после рекомпилинга. Тоесть UPX это только чтобы качать меньше. Сжатый файл разжимается и оценивается расжатый.


Что за бред? Для этого rar есть.


 
XProger ©   (2005-05-16 20:07) [43]

Darth, ну в действительности в демосцене юзают утилиты для сжатия exe и это считается нормой :)


 
Zer0 ©   (2005-05-17 03:29) [44]

Чтобы UPX хорошо пажал экзешник у прогера должны быть правильно (к нужному месту) замаунчены /dev/brain/ и /dev/hands/.
Например нормальный прогер не станет пристыковывать к проге текстуру "шума" в виде ресурса-картинки Jpeg.

Однако есть мнение что в данном конкретном случае размер не является самоцелью, а скорее видом понтозакидывания.
(Ну вот блин докатились, взрослые мужики меряются у кого меньше =)


 
XProger ©   (2005-05-17 03:45) [45]

Zer0, в WinXP есть встроенные средства для распаковки JPEG, BMP, GIF, PNG, так что поддержка таких текстур будет занимать меньше, нежели реализация генератора шумов :) Да и шумы могут быть не совсем шумами... ;)


 
Zer0 ©   (2005-05-17 03:53) [46]

Зашумленные картинки (если интервал корреляции очень небольшой) весят при том же качестве на порядок больше. Потому что количество ниформации в них больше (в данном случае вреднй). И сжимаются из-за этого они хуже. Весят больше и т.д. Короче никому не нужный расход ресурсов, т.к. пошуметь можно в одну строчку кода.

p.s. Меня убило в Quake 3 именно то что при всем богатстве шейдерного языка в нем нет генератора шумов... для телевизоров есть текстуры.... в TGA... =(


 
XProger ©   (2005-05-17 04:11) [47]

Zer0, Ку3 и без них превосходно даже по сей день смотрится! А жейдеры там не пиксельные если что... ;)


 
Darth   (2005-05-17 10:20) [48]

А какая нафиг разница какие там шейдеры? шейдеры это не обязательно то что сейчас встраивают в видеокарточки. Никто не мешает тебе писать свои шейдеры и делать свой шейдерный язык.


 
Zer0 ©   (2005-05-17 17:59) [49]

[47] XProger
абижаешь. я жы написал - шейдерный язык. в кутрике это были верктех шейдеры реализованные программно =) обозвал их шейдерам тов. кармак. хотя по сути это surface properties.

если уж копать до конца то "pixel shader" еще перевариваемо по смыслу (обычно на нем реализуюут всякие светотени), а вот "vertex shader" который занимается не просчетом освещенности вершин, а их смещением - это уже перебор. какой тут нахрен shading?

возвращаясь к теме беседы - применяя грамотные алгоритмические ходы можно значительно уменьшить размер всего дистриба.
в том числе и с использованием генератора паттернов/шумов. (perlin,gauss, musgrave,регулярные решетки) если добавить к шумелкам простые математические функции и операции, сделать небольшой скрипт язык то можно получить огромное количество тектстур.
применением только кода вместо ресурсов и сжатием можно добиться неплохих результатов типа всем извесного TheProduct.
если же например пристегивать к екзешнику готовые текстуры и пытатся зажать при помощи UPX результат будет фиговый. такшто даже UPX нужно использовать с умом.


 
Sphinx ©   (2005-05-17 23:18) [50]

.kkr***** - 96 кб демо
демка была такая...название забыл полное, но они много 64к демо делали...полноценная игрушка....со звуками, неплохой графикой и при этом в readme к демке автор указывал что он не пользовался ни какими упаковщиками и писал код на сях с небольшими asm-скими вставками в генераторах текстур...в .exe была вшита midi музыка к тому же...


 
XProger ©   (2005-05-18 00:17) [51]

kkrieger beta
Не использовал упаковщиков говоришь...
А почему же тогда даже UPX её сжать на 1 кб не может? ;)))


 
Zer0 ©   (2005-05-18 00:41) [52]

был еще много чего. могу сказать точно что упаковку не используют в демах на 256 байт типа tunnel http://www.pouet.net/prod.php?which=3397


 
Sphinx ©   (2005-05-18 07:26) [53]

>XProger ©   (18.05.05 00:17) [51]
Я давно знаю что ты еще та язва ;)

Про UPX не знаю...но ради тебя нашел эту демку у себя на компе...цитирую:

.kkrieger, chapter I - Beta Version
.a game in 96k
by .theprodukkt
(released at breakpoint 2004)

- We do .not. have some kind of magical data compression machine that is able to squeeze hundreds of megabytes of mesh/texture and sound data into 96k. We merely store the individual steps employed by the artists to produce their textures and meshes, in a very compact way. This allows us to get .much. higher data density than is achievable with normal data compression techniques, at some expense in artistic freedom and loading times.
- .kkrieger is not written in 100% assembler/machine language. Not even nearly. Like the vast majority of game projects being developed today, .kkrieger was mostly written in C++, with some tiny bits of assembler where it is actually advantageous (notably, there are a lot of MMX optimisations in the texture generator).
- A kilobyte is, historically, defined to be 1024 (2^10) bytes, not 1000. Thus .kkrieger is a game in 96k even though it"s actually 98304 bytes.
- The concept of the texture/mesh generators was developed by fiver2. We do .not. want to claim that the techniques we used to develop .kkrieger are new inventions. Itґs rather a selection of useful operations and their parameters to optimise the results.


 
Zer0 ©   (2005-05-18 15:12) [54]

omgwtflol!

We do .not. have some kind of magical data compression machine that is able to squeeze hundreds of megabytes of mesh/texture and sound data into 96k. We merely store the individual steps employed by the artists to produce their textures and meshes, in a very compact way.

Они говорят что используют процедуральные методы генерации текстур, моделей и звуков(музыки) а не сжимают уже готовые.

Про комрессию ексзефайла нет ни слова.

Если делать статистический анализ несжатого файла то должны быть видны явно выраженные пики (часто используемые команды процессора, обращения к определенным участкам памяти и тд), но анализируя kkrieger можно увидеть что распределение по байтам и словам примерно равномерное, которое достигается только за счет сжатия.

ну и контрольный выстрел в голову - вот заголовок exe файла:
MZfarbrauschPE  L _¼y@        ˆ  
à   Ð      z          |                      pØ                                      ×{ (                           kkrunchyWRØ     l                à  à¾ÿÿK& N¢L"ÞÝ


а kkrunchy появляется в списке exe-пакеров http://www.maximumcompression.com/benchmarks/Squeeze%20Chart%202005.pdf

dismissed =)


 
XProger ©   (2005-05-18 18:13) [55]

Sphinx, я не язва, я врач...
А компрессор использовался ;)


 
OSokin ©   (2005-05-27 21:21) [56]

Отправил.


 
Zak3D[@Tm] ©   (2005-05-29 23:30) [57]

Вот стало интересно, кто будет учавстовать(или уже учавствует) в конкурсе? Ну и на какой стадии игруха =)?.

Обо мне:
1) Учавствую.
2) Один день пописал, а щас зачётная неделя =(... (надеюсь дописать).
-----------------
Высказывайтесь плз. =)


 
XProger ©   (2005-05-30 01:57) [58]

Писал-писал... в итоге походу забил :)


 
Sphinx ©   (2005-05-30 08:11) [59]

Игра замерла на стадии передвижения шариков по клеткам...
Озадачивают по диплому сильно...на всё времени не хватает :(
Постараюсь успеть, но "меня терзают смутные слмнения" (с) что не успею.


 
grouzd[E]v ©   (2005-05-30 13:39) [60]

Почти все готово - не разобрался только с "путенахождением", зато присутствует "путесуществование" (т.е. нельзя сходить куда нельзя). Сильно школа блнЪ мешала, но сегодня был последний день, так что к 4му должен закончить (хотя, честно говоря, больше мешает Готика 2 - дернул же меня черт заново ее проходить!!!)


 
OSokin ©   (2005-05-31 17:37) [61]

Обновил, там была пара глюков...
А вообще, завтра первый екзамен, так что полностью до ума довести вряд ли получится... Опять на последнее место попаду ;-)


 
Darth   (2005-06-02 22:37) [62]

Осокин, пока ты один сдал. Завтра последний день сдачи. Может быть и первым будешь ;)


 
Zak3D[@Tm] ©   (2005-06-03 16:30) [63]

=) у меня сегодня свободный вечер, постараюсь что-небудь сделать и послать уже =).


 
OSokin ©   (2005-06-03 20:11) [64]

Обновляю (пару кнопок добавил).

ЗЫ Дарз, надо скрипт для конкурсов на php (пока немного недоделаный)?


 
OSokin ©   (2005-06-03 21:06) [65]

Да, забыл сказать: это не попытка подкупа ;-)


 
Kind ©   (2005-06-03 23:02) [66]

Наконец тоже решил поучаствовать, и послал свою линию :)
По сути, это вторая игра, написанная мною в жизни.
К сожалению могу провести за компьютером не больше часа-двух в день, поэтому для меня программирование это простенькое хобби, жаль, что когда я ходил в школу у меня не было компьютера!

Завтра уезжаю в короткий отпуск, поэтому не кричите, что не буду отзываться, если надо будет оценки ставить.

Всем пока!

Да здравствует вода, песок и солнце! :)


 
Zer0 ©   (2005-06-04 00:57) [67]

у меня были подозрения что если уж "Конкурс проводится до 4 Июня включительно." то можно будет сдать работу без пяти минут 5-е июня.


 
Zak3D[@Tm] ©   (2005-06-04 01:52) [68]

Zer0
А разве не так?


 
Zer0 ©   (2005-06-04 03:27) [69]

[62] Darth   (02.06.05 22:37)
Осокин, пока ты один сдал. Завтра последний день сдачи. Может быть и первым будешь ;)


 
Darth   (2005-06-04 11:39) [70]

гыгы.... сразу видно кто читал а кто нет =)


 
Zak3D[@Tm] ©   (2005-06-04 11:40) [71]

Ну так последний, всё правильно.
На code.rpro.ru написано, что конкурс продлится до 4 числа ВКЛЮЧИТЕЛЬНО.


 
Darth   (2005-06-04 12:06) [72]

grouzd[E]v почему закачал вместо тхт второй архив?


 
grouzd[E]v ©   (2005-06-04 14:58) [73]

OOPS!!! Щас повторю. Ага, готово. Кстати, у тебя не сильно тормозит?


 
Zer0 ©   (2005-06-04 18:53) [74]

глупый вопрос: какой размер сетки и сколько разных типов шариков в класичесних лайнсах?


 
Zak3D[@Tm] ©   (2005-06-04 20:39) [75]

ээээ..... я 9*9 сделал =)


 
Zer0 ©   (2005-06-04 22:42) [76]

походу сделать не успеваю. как обычно будет post mortem версия =)


 
grouzd[E]v ©   (2005-06-05 00:51) [77]

Хаха! уже 51 минута 5 числа, а работы еще можно присылать =) Darth! Get Up!


 
Zak3D[@Tm] ©   (2005-06-05 01:17) [78]

тааак... насколько я понимаю нас пятеро =)


 
grouzd[E]v ©   (2005-06-05 11:08) [79]

не народ, че за фигня? сегодня уже пятое, че ждем-то?


 
Zak3D[@Tm] ©   (2005-06-05 12:42) [80]

grouzd[E]v
Как чего ждём???
Ждём, пока Дарз посмотрит работы, подготовит их и выложит на скачивание. Это не особо быстрая работа, тем более если учесть, что сегодя будний день! Т.е. рабочий. И у каждого есть свои дела. Как он освободится и сделает всё вышеперечисленное, так мы и получим исходники =).
Так, что не бунтовать. Всё будет чики-чики.



Страницы: 1 2 3 4 5 6 7 8 9 
10 11 12 13 14 15 16 вся ветка

Текущий архив: 2006.09.10;
Скачать: CL | DM;

Наверх




Память: 0.64 MB
Время: 0.095 c
1-1154089607
Peak
2006-07-28 16:26
2006.09.10
Собственный Инспектор объектов.


15-1155631422
Александр Иванов
2006-08-15 12:43
2006.09.10
Мартин Файлер "Рефакторинг"


15-1155743804
Konstantin555
2006-08-16 19:56
2006.09.10
Когда будет доступен для скачивания ДАЙДЖЕСТ?


15-1155584405
ronyn
2006-08-14 23:40
2006.09.10
Как создать приложение под разные ОС


2-1155817627
Anonimus11
2006-08-17 16:27
2006.09.10
База данных