Happytrix

Автор Andru, 10 Грудень 2007, 03:42:28

Попередня тема - Наступна тема

Andru

Смотрю вроде как зима пришла, решил потрясти винт и выложить свою старую зимнюю поделку :) Думаю кому-нить да будет интересно.
Выкладываю свой первый и последний в жизни ColorTetris в зимнем исполнении(за графику не бить, честно скажу - очень понравилась Santa Hanta :)). Думаю написать тетрис это долг каждого программера увлекающегося играми )

скрины:


скачать:
версия под Windows(813Кб)
версия под Linux(1.1Мб)
Исходный код(41Кб, Win32/Linux, Delphi/FreePascal)

ЗЫ: глянул еще раз на исходы... подумал... и скажу такую фразу - не берите дурной пример в написании игрушек на скорую руку))) игру когда-то писал на конкурс новогодних тетрисов, проводимый на сайте igdc.ru

linuxdrom

Цитата: Andru від 10 Грудень 2007, 03:42:28
за графику не бить, честно скажу - очень понравилась Santa Hanta :)).
Не будем - вполне симпатично, и музыка зачётная  .
Цитата: Andru від 10 Грудень 2007, 03:42:28
игру когда-то писал на конкурс новогодних тетрисов, проводимый на сайте igdc.ru
Какое место занял?

З.Ы. Я уже когда-то жаловался на изменение разрешения с помощью правки Settings.ini  ;)
З.З.Ы. И меня почему-то назвали Andru

Viki


Это у меня только так, или еще у кого-то?
з.ы.
Музыка - класс :D

βεερ_βooρ

bash-3.1$ ./Happytrix
An unhandled exception occurred at $F7BDB66A :
Exception : Could not load OpenGL from libGL.so.1
  $F7BDB66A
  $F7BDA86A


PS
master@shiray:~$ uname -rvmpio
2.6.23.1-sh #2 Sun Oct 21 22:23:07 EEST 2007 x86_64 Mobile AMD Sempron(tm) Processor 3400+ AuthenticAMD GNU/Linux

OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce Go 6100/PCI/SSE2
OpenGL version string: 2.1.1 NVIDIA 100.14.19
Fear is the path to the dark side. Fear leads to anger. Anger leads to hate. Hate leads to suffering.
All that's here is Fear! Suppression! Betrayal! Despair! Contempt! Regret! Sadness! Anguish! Madness! And Pain, right?

Andru

#4
Viki
Каспер стоит или Antivir(эти двое сканируют все файлы и блокируют их при создании, вот движок и матюгается)? Впринципе дело поправимое, и могу разместить новую версию dll. Видать на сайте просто лежит старая сборка под Windows.

Цитата: linuxdrom від 10 Грудень 2007, 17:49:35
Какое место занял?

З.Ы. Я уже когда-то жаловался на изменение разрешения с помощью правки Settings.ini
Первое ^_^ Про расширение - в окно опций тогда не поместилась строчка) И кстати, теперь хоть разрешение раб. стола возвращается?

beep_boop
кхм, а вот это уже странно  :-\ Единственное что могу предположить - игруля пытается использовать 64-битную либу OpenGL, а сама ведь 32-битная. Под рукой у самого нет 64-битного линуха установленного, поэтому откомпилировать версию под 64-бита нет возможности

ЗЫ: насчет музычки, туда в самый раз музыку из санты ханты бы засунуть))) А так все похвалы трекерному сообществу modarchive.org, которое предоставляет в безвозмездное пользование большую базу трекерных файлов с музыкой.
ЗЫЫ: блин, система смайлов уже начинает бесить... не срабатывает смайл со смущенным глазками, а опция "отключить смайлы" до одного места... вместо того чтоб оставить чисто текстовые смайлы, все равно матюгается на них... пошол я в раздел "предложений"

linuxdrom

Цитата: Andru від 10 Грудень 2007, 19:21:21
Первое ^_^
Я знал  :)
Цитата: Andru від 10 Грудень 2007, 19:21:21
И кстати, теперь хоть разрешение раб. стола возвращается?
После того как я решил переключить в оконный режим, разрешение раб. стола не вернулось, а игрушка зависла. Я решил не испытывать судьбу и прописал фулскрин и нужное мне разрешение.
Цитата: Andru від 10 Грудень 2007, 19:21:21
кхм, а вот это уже странно  :-\ Единственное что могу предположить - игруля пытается использовать 64-битную либу OpenGL, а сама ведь 32-битная.
У меня в 64-битной Генте нормально, только вот
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  135 (XFree86-VidModeExtension)
  Minor opcode of failed request:  10 (XF86VidModeSwitchToMode)
  Value in failed request:  0x3a00002
  Serial number of failed request:  15396
  Current serial number in output stream:  15399

ругается.


Andru

ЦитатаУ меня в 64-битной Генте нормально
Видать у beep_boop с ld что-то по другому... а мне придется обуздать скрипты и определять нужные пути к lib32 в 64-битных системах

ЦитатаЯ знал
Думаю если бы желающих собралось больше на тот конкурс, думаю меня бы уделали :) А так это "just for fun" сообщество, где на конкурсы собираются максимум до 15-20 человек, зато народ весело проводит тайм, ща вот делают файтинги %) жалко у меня тайма небыло... сессия елки...

Цитатаругается.
и что ему не нравиться... программируя графику под Linux чувствую себя полным нубом %)

SilentMan

Спасибо, понравилось :)

P.S. А у нас в квартире газ меня все отлично запустилось  8)
[sm@home-sm Happytrix]$ ./Happytrix
### XOpenDisplay - good :)
### glXQueryExtension - good :)
### Choose Double Buffer...
### glXChooseVisual - good :)
Set app_DesktopModeGet...
Try to create DirectRendering context...successful
Try to make current context...successful

Так что нубом себя чувствуешь зря.

Andru

#8
SilentMan
Просто порой возникают насущные проблемы, решение которых в полной тьме... и непонятно с чем связано. Причем проблем довольно много с ATI-карточками, т.к. были случаи жутких тормозов, а было просто не инитится и хоть убей... и уже начинаешь сомневаться в прямоте /dev/hands, и нервно искать инфу в нете как правильно инитить все под линухом) Потом смотришь - вроде же все правильно сделано, и тогда начинается нервный тик глаза *CRAZY* Я не виню разработчиков ATI-дров под Linux, но можно ведь было все сделать как-то по другому, чтоб начинающий разработчик не плясал с бубном.

ЗЫ: кстати, кроме музыки в Linux-версии какие-то звуки еще есть? А то кажись uFMOD и OpenAL конфликтуют...

βεερ_βooρ

#9
Цитата: Andru від 10 Грудень 2007, 19:21:21
beep_boop
кхм, а вот это уже странно  :-\ Единственное что могу предположить - игруля пытается использовать 64-битную либу OpenGL, а сама ведь 32-битная.
Да, возможно проблема в этом.
Цитата: Andru від 10 Грудень 2007, 19:21:21
Под рукой у самого нет 64-битного линуха установленного, поэтому откомпилировать версию под 64-бита нет возможности
Я мог бы откомпилировать, но у меня нету под рукой FP. Помимо FP еще что-то необходимо для компиляции?
Цитата: Andru від 10 Грудень 2007, 20:10:25
Видать у beep_boop с ld что-то по другому... а мне придется обуздать скрипты и определять нужные пути к lib32 в 64-битных системах
Наверное накосячил мой скрипт автоматического апдейта дров NVidia. Кажись у мну потерялись 32б либы для ОГЛ...

Втр Дек 11 00:02:31 EET 2007
Угу, так и есть:
master@shiray:/usr/lib32$ file libGL.so.100.14.19
libGL.so.100.14.19: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), stripped

Какого в /usr/lib32 делают 64б либы не знаю, во всяком случии проблема не у тебя. Извиняюсь за беспокойство.
Fear is the path to the dark side. Fear leads to anger. Anger leads to hate. Hate leads to suffering.
All that's here is Fear! Suppression! Betrayal! Despair! Contempt! Regret! Sadness! Anguish! Madness! And Pain, right?

Viki

ЦитатаViki
Каспер стоит или Antivir(эти двое сканируют все файлы и блокируют их при создании, вот движок и матюгается)?
Спасибо. После выключения Antivir error'a нет.

Andru

Viki
не боишся что моя игра это страшный вирус и отключив антивирус все данные будут удалены? :) шучу) Вообщем думаю отключать антивир это ен выход, поэтому можно качнуть вот этот файл и кинуть его в папку с игрой(заменить старый), а то у меня сейчас нет возможности залить новый инсталятор

beep_boop
ЦитатаКакого в /usr/lib32 делают 64б либы не знаю, во всяком случии проблема не у тебя. Извиняюсь за беспокойство.
Да ниче :) Еще раз я задумался о написании запускных скриптов для игрушек, т.к. ситуации могут быть какие угодно.

ЦитатаЯ мог бы откомпилировать, но у меня нету под рукой FP. Помимо FP еще что-то необходимо для компиляции?
Впринципе надо только FPC да сырцы движка, но помню когда только начал портировать(баловался только )), то юзал 64-битную бубунту, и там возникли траблы по работе с памятью во время загрузки текстур. Я их тогда решил, но потом перешол на 32-бита и сырцы начал пересобирать заново. Поэтому без какого-либо вмешательства внутрь, думаю могут таки возникнуть проблемы другого рода. Надо таки пересесть на 64-бита и настроить нормальную компиляцию в FPC под 32 и 64 бита. Именно потому что возникли с этим большие проблемы(сколько не долбался FPC так и не линковал откомпилированные модули), я и бросил х86_64, оставшись верным проверенной временем архитектуре )