Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
w23
Зарегистрирован: 12.09.2011 Сообщения: 51 Откуда: nsk
|
Добавлено: Вт Сен 13, 2011 15:10 Заголовок сообщения: |
|
|
Код: | ls -l /usr/lib/libSDL* | что говорит?
использования SDL можно избежать ценой многих десятков (а то и сотен, не пробовал это на ассемблере делать, если честно) байт -- инициализация одного только gl-контекста в SDL делается за две функции, а на чистых иксах за десять. к тому же, SDL это де-факто стандарт, им пользуются практически все игроделы, и он присутствует везде. грех не пользоваться.
другое дело, что мне надо, похоже, детально разобраться в том, как на линуксе происходит поиск so-библиотек, как его готовить, и как ему угодить. потому что на gentoo дома тот же самый бинарник у меня с той же самой ошибкой, что у вас, не заработал. зато работает такой: http://w23.ru/tmp/urotsuki_f1280x720_gentoo
пойти что ли сделать windows-версию :D (для винды, правда, она совсем позор, конечно, и до нынешнего уровня не дотягивает ни разу). |
|
Вернуться к началу |
|
|
BiTL DOS lover
Зарегистрирован: 22.09.2007 Сообщения: 2950
|
Добавлено: Вт Сен 13, 2011 15:15 Заголовок сообщения: |
|
|
w23 писал(а): | Код: | ls -l /usr/lib/libSDL* | что говорит?
|
Код: | ls -l /usr/lib/libSDL*
lrwxrwxrwx 1 root root 20 2010-10-30 19:20 /usr/lib/libSDL-1.2.so.0 -> libSDL-1.2.so.0.11.3
-rw-r--r-- 1 root root 400132 2010-07-02 11:50 /usr/lib/libSDL-1.2.so.0.11.3
lrwxrwxrwx 1 root root 25 2010-10-30 19:20 /usr/lib/libSDL_image-1.2.so.0 -> libSDL_image-1.2.so.0.8.2
-rw-r--r-- 1 root root 46564 2010-05-12 14:12 /usr/lib/libSDL_image-1.2.so.0.8.2
lrwxrwxrwx 1 root root 23 2011-08-01 15:42 /usr/lib/libSDL_net-1.2.so.0 -> libSDL_net-1.2.so.0.0.7
-rw-r--r-- 1 root root 11612 2007-10-31 16:36 /usr/lib/libSDL_net-1.2.so.0.0.7
lrwxrwxrwx 1 root root 25 2011-08-01 15:42 /usr/lib/libSDL_sound-1.0.so.1 -> libSDL_sound-1.0.so.1.0.2
-rw-r--r-- 1 root root 161820 2009-08-18 09:00 /usr/lib/libSDL_sound-1.0.so.1.0.2 |
|
|
Вернуться к началу |
|
|
BiTL DOS lover
Зарегистрирован: 22.09.2007 Сообщения: 2950
|
Добавлено: Вт Сен 13, 2011 15:19 Заголовок сообщения: |
|
|
w23 писал(а): |
использования SDL можно избежать ценой многих десятков (а то и сотен, не пробовал это на ассемблере делать, если честно) байт |
Код: | /* Function to construct and initialize X-windows Window */
void xInitWindow(int *argv, char **argc)
{
XVisualInfo *xvVisualInfo;
Colormap cmColorMap;
XSetWindowAttributes winAttributes;
GLXContext glXContext;
/* Open the Display */
dpDisplay = XOpenDisplay(NULL);
if(dpDisplay == NULL)
{
printf("Could not open display!\n\r");
exit(0);
}
/* Check for GLX extension to X-Windows */
if(!glXQueryExtension(dpDisplay, NULL, NULL))
{
printf("X server has no GLX extension.\n\r");
exit(0);
}
/* Grab a doublebuffering RGBA visual as defined in dblBuf */
xvVisualInfo = glXChooseVisual(dpDisplay, DefaultScreen(dpDisplay), dblBuf);
if(xvVisualInfo == NULL)
{
printf("No double buffering RGB visual with depth buffer available.\n\r");
exit(0);
}
/* Create a window context */
glXContext = glXCreateContext(dpDisplay, xvVisualInfo, None, True);
if(glXContext == NULL)
{
printf("Could not create rendering context.\n\r");
exit(0);
}
/* Create the color map for the new window */
cmColorMap = XCreateColormap(dpDisplay, RootWindow(dpDisplay, xvVisualInfo->screen), xvVisualInfo->visual, AllocNone);
winAttributes.colormap = cmColorMap;
winAttributes.border_pixel = 0;
winAttributes.event_mask = ExposureMask | ButtonPressMask | StructureNotifyMask |
KeyPressMask;
/* Create the actual window object */
win = XCreateWindow(dpDisplay,
RootWindow(dpDisplay, xvVisualInfo->screen),
0,
0,
640, // Horizontal Size
480, // Veritical Size
0,
xvVisualInfo->depth,
InputOutput,
xvVisualInfo->visual,
CWBorderPixel | CWColormap | CWEventMask,
&winAttributes);
/* Set the standard properties for the window. */
XSetStandardProperties(dpDisplay,
win,
"Test1",
"Test1",
None,
(char **) argv,
(int) argc,
NULL);
/* Establish new event */
wmDeleteWindow = XInternAtom(dpDisplay, "WM_DELETE_WINDOW", False);
XSetWMProtocols(dpDisplay, win, &wmDeleteWindow, 1);
/* Bind the OpenGL context to the newly created window. */
glXMakeCurrent(dpDisplay, win, glXContext);
/* Make the new window the active window. */
XMapWindow(dpDisplay, win);
} |
|
|
Вернуться к началу |
|
|
w23
Зарегистрирован: 12.09.2011 Сообщения: 51 Откуда: nsk
|
Добавлено: Вт Сен 13, 2011 15:32 Заголовок сообщения: |
|
|
http://w23.ru/tmp/urotsuki_f1280x720_BiTL :D
спасибо, я знаю, как инициализировать gl через x11/glx. и 11 вызовов в примере все равно >> чем 2 вызова. к этим функциям еще нужны строки (чтобы их заdlsym'ить), а еще там куча переменных-параметров. короче, одни страдания несчастных лишних байт. и не факт, что с libX11 (и что там еще есть) не будет похожих проблем, как с libSDL |
|
Вернуться к началу |
|
|
BiTL DOS lover
Зарегистрирован: 22.09.2007 Сообщения: 2950
|
Добавлено: Вт Сен 13, 2011 15:44 Заголовок сообщения: |
|
|
w23 писал(а): | http://w23.ru/tmp/urotsuki_f1280x720_BiTL |
посмотрел. Работает. Звук есть. Но фрэмрейт адский. Мой нетбук не тянет. А как ты плазму рисуешь? Вроде не должно тормозить если так делать: http://www.wasm.ru/forum/files/_1758731795__plasma_fast_small_nice.cpp
Цитата: |
спасибо, я знаю, как инициализировать gl через x11/glx. и 11 вызовов в примере все равно >> чем 2 вызова. к этим функциям еще нужны строки (чтобы их заdlsym'ить), а еще там куча переменных-параметров. короче, одни страдания несчастных лишних байт. и не факт, что с libX11 (и что там еще есть) не будет похожих проблем, как с libSDL |
Ну я пару лет назад тестил, x11/glx инициализация окна прекрасно работала и в Мандриве, и в openSuse, и в Убунту. Сейчас проверил, в моей нынешней системе точно также прекрасно все работает.
Дело конечно личное. Но я считаю, что 1к, 4к для Линукс делать бессмысленно. Лучше нормальные 64к делать, или демы |
|
Вернуться к началу |
|
|
BiTL DOS lover
Зарегистрирован: 22.09.2007 Сообщения: 2950
|
Добавлено: Вт Сен 13, 2011 15:50 Заголовок сообщения: |
|
|
а вот синт приятный, для 1кб ещё и в линупсе очень неплохо. |
|
Вернуться к началу |
|
|
w23
Зарегистрирован: 12.09.2011 Сообщения: 51 Откуда: nsk
|
Добавлено: Вт Сен 13, 2011 16:08 Заголовок сообщения: |
|
|
версия с меньшим разрешением http://w23.ru/tmp/urotsuki_w720x480_BiTL
плазма полностью на фрагментном шейдере сделана, с кучей синусов per pixel и ребятами. и у меня тоже тормозит :D
так исторически вышло, что там вообще что-то скучное, вроде плазмы, а не что бы то ни было еще.
сишная версия этой демочки, собранная стандартными gcc+ld без особых выкрутасов, тоже, вроде, работает везде (где была собрана, впрочем; непосредственно бинарник я не переносил).
придется запасаться livecd'шками и мучаться, наверное. атишной карточки, правда, нет, чтобы fglrx еще потестировать.
для 64к и мегадемо нужно значительно больше труда и труда не-программистов, которых в моем распоряжении, увы, нет. поэтому приходится браться за абы как подъемное. |
|
Вернуться к началу |
|
|
w23
Зарегистрирован: 12.09.2011 Сообщения: 51 Откуда: nsk
|
Добавлено: Вт Сен 13, 2011 16:09 Заголовок сообщения: |
|
|
BiTL писал(а): | а вот синт приятный, для 1кб ещё и в линупсе очень неплохо. |
спасибо :D. синт что-то около 161 байта занимает. |
|
Вернуться к началу |
|
|
BiTL DOS lover
Зарегистрирован: 22.09.2007 Сообщения: 2950
|
Добавлено: Ср Сен 14, 2011 11:37 Заголовок сообщения: |
|
|
w23 писал(а): | для 64к и мегадемо нужно значительно больше труда и труда не-программистов, которых в моем распоряжении, увы, нет. поэтому приходится браться за абы как подъемное. |
не факт. Не обязательно же делать демы аля ASD, а интры аля Fairlight. Есть достаточно примеров чисто кодерских интро и демо, где нет никакого моделинга и особого дизайна, а есть просто клёвые эффекты хорошо засинхронизированны под музыку. Достаточно чувством стиля обладать, уметь цвета правильно подбирать. |
|
Вернуться к началу |
|
|
w23
Зарегистрирован: 12.09.2011 Сообщения: 51 Откуда: nsk
|
Добавлено: Ср Сен 14, 2011 12:02 Заголовок сообщения: |
|
|
BiTL писал(а): | Не обязательно же делать демы аля ASD, а интры аля Fairlight. Есть достаточно примеров чисто кодерских интро и демо, где нет никакого моделинга и особого дизайна, а есть просто клёвые эффекты хорошо засинхронизированны под музыку. Достаточно чувством стиля обладать, уметь цвета правильно подбирать. |
увы, я хочу делать такие вещи, от которых бы у всех пупки завязывались бантом. |
|
Вернуться к началу |
|
|
BiTL DOS lover
Зарегистрирован: 22.09.2007 Сообщения: 2950
|
Добавлено: Ср Сен 14, 2011 19:57 Заголовок сообщения: |
|
|
w23 писал(а): | BiTL писал(а): | Не обязательно же делать демы аля ASD, а интры аля Fairlight. Есть достаточно примеров чисто кодерских интро и демо, где нет никакого моделинга и особого дизайна, а есть просто клёвые эффекты хорошо засинхронизированны под музыку. Достаточно чувством стиля обладать, уметь цвета правильно подбирать. |
увы, я хочу делать такие вещи, от которых бы у всех пупки завязывались бантом. |
я твёрдо уверен, что такие вещи можно делать без моделинга, например. Ну уж точно будет сложней завязать пупки бантиком делая 1-4кб, имхо. Ещё и под линь. |
|
Вернуться к началу |
|
|
w23
Зарегистрирован: 12.09.2011 Сообщения: 51 Откуда: nsk
|
Добавлено: Ср Сен 14, 2011 20:13 Заголовок сообщения: |
|
|
BiTL писал(а): | я твёрдо уверен, что такие вещи можно делать без моделинга, например. Ну уж точно будет сложней завязать пупки бантиком делая 1-4кб, имхо. Ещё и под линь. |
не, в 1-4кб даже проще -- возможностей-то мало, одни ограничения :D, от них проще отталкиваться.
а то при мыслях о больших демках начинается всякое изобилие возможностей, накладывающихся на проблему выбора, что в конечном счете выливается в "пойду аниме посмотрю" вместо полезного выхлопа.
а еще под линь конкуренции меньше :D. и тулзов нет готовых, в этом тоже свой фан есть. |
|
Вернуться к началу |
|
|
BiTL DOS lover
Зарегистрирован: 22.09.2007 Сообщения: 2950
|
Добавлено: Ср Сен 14, 2011 20:25 Заголовок сообщения: |
|
|
w23 писал(а): | BiTL писал(а): | я твёрдо уверен, что такие вещи можно делать без моделинга, например. Ну уж точно будет сложней завязать пупки бантиком делая 1-4кб, имхо. Ещё и под линь. |
не, в 1-4кб даже проще -- возможностей-то мало, одни ограничения , от них проще отталкиваться.
а то при мыслях о больших демках начинается всякое изобилие возможностей, накладывающихся на проблему выбора, что в конечном счете выливается в "пойду аниме посмотрю" вместо полезного выхлопа.
а еще под линь конкуренции меньше . и тулзов нет готовых, в этом тоже свой фан есть. |
Просто мне нравится когда интро запускается без танцев с бубном. В линукс 4к никогда не сделаешь таковой Дистры постоянно меняются, пакеты устаревают, прекращают поддерживатся. Сегодня она работает - завтра хер запустишь. Попробуй запустить какое-нибудь линукс-демо 5-7 летней давности. 9 из 10 не пойдут скорее всего |
|
Вернуться к началу |
|
|
w23
Зарегистрирован: 12.09.2011 Сообщения: 51 Откуда: nsk
|
Добавлено: Чт Сен 15, 2011 06:17 Заголовок сообщения: |
|
|
BiTL писал(а): |
Просто мне нравится когда интро запускается без танцев с бубном. В линукс 4к никогда не сделаешь таковой :) Дистры постоянно меняются, пакеты устаревают, прекращают поддерживатся. Сегодня она работает - завтра хер запустишь. Попробуй запустить какое-нибудь линукс-демо 5-7 летней давности. 9 из 10 не пойдут скорее всего :) |
Не вижу причин, по которым нельзя сделать такую. По крайней мере у меня совсем грязных и непереносимых хаков нет, надо только разобраться с тем, как линукс ищет сошки с нужной версией.
И в самом крайнем случае всегда можно сделать "SETUP.EXE", как здесь: http://pouet.net/prod.php?which=50602
Ну и виндовс тоже непостоянная девица -- вон кринклер для каждой новой версии допиливают. |
|
Вернуться к началу |
|
|
BiTL DOS lover
Зарегистрирован: 22.09.2007 Сообщения: 2950
|
Добавлено: Чт Сен 15, 2011 13:20 Заголовок сообщения: |
|
|
w23 писал(а): | BiTL писал(а): |
Просто мне нравится когда интро запускается без танцев с бубном. В линукс 4к никогда не сделаешь таковой Дистры постоянно меняются, пакеты устаревают, прекращают поддерживатся. Сегодня она работает - завтра хер запустишь. Попробуй запустить какое-нибудь линукс-демо 5-7 летней давности. 9 из 10 не пойдут скорее всего |
Не вижу причин, по которым нельзя сделать такую. По крайней мере у меня совсем грязных и непереносимых хаков нет, надо только разобраться с тем, как линукс ищет сошки с нужной версией.
И в самом крайнем случае всегда можно сделать "SETUP.EXE", как здесь: http://pouet.net/prod.php?which=50602
|
Не, устанавливать демку это уже ахтунг Тогда мож ещё и репозитории делать, для всех линуксов?
w23 писал(а): |
Ну и виндовс тоже непостоянная девица -- вон кринклер для каждой новой версии допиливают. |
Ну к счастью для демомэйкеров более постоянная чем Линукс. Вон, С64, Амига, ZX - для демосцены вообще идеальные платформы Они ещё и железячно постоянны )) |
|
Вернуться к началу |
|
|
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|