![]() |
Ответ: blitz3D + OpenGL
А если не нравится ООП, то тут благодаря синтаксису блица не умрешь. блиц позволяет сделать через жопу все что угодно :-)(дык можно и без методов обойтись)
|
Ответ: blitz3D + OpenGL
В бмаксе для олдфагов есть модуль brl.retro который позволяет кодить как в блитз3д.
|
Re: blitz3D + OpenGL
Blitz3D мне нравится, я давно с ним работаю. в том числе я на нём делаю для себя всякие конвертелки под спектрум, гляделки и прочее. но тут задумался над чем то более крупным чем прочсто конвертилка спрайтов. дх7 я уже пробовал..как то не вдохновился. а на огл всё таки, работа на более низком уровне. да и кстати да, интересно заюзать блиц + огл. я знаю что у блица тормозная арифметика, ничего страшного, некоторые пишут на си++ и прочих языках, а результат ещё тормознее, чем блиц. ооп я не люблю, а на максе, какой бы не использовал мод, ооп он и есть ооп. по поводу что не везде работает - на данный момент пока не нашол решение проблемы с фуллскрином, в окне работает на всех машинах! например, результаты таких каманд как glGetString, возвращают текущие параметры, например вендора, версия и рендер... пробовал по одной из док сделать определение возвожности заюзать glsl, отработал без труда, все функции вернули положительный результат. нвидиа цг так же определяет вероятность использования шейдеров. но шейдеры сейчас не самое важное, важно заставить пахать на весь экран. продолжаю курить, вроде выход есть, сёдня набросаю процедурку на си, посмотрим что будет...
|
Re: blitz3D + OpenGL
Вложений: 1
Собственно говоря решение проблемы частично нашол. результат прикрепляю (пример работы с CG, там самый простейший шейдер).
|
Ответ: blitz3D + OpenGL
Скачал, запустил. Сразу выдало MAV. Не найдена библиотека. До вылетания ошибки приложение запускается не на весь экран и в формате 16:9 с разрешением 1280х720. Библиотеки подсунуть к приложению перепробовал все нашедшиеся в моей коллекции (OpenGL32.dll, OpenGL.dll, glut32.dll и его же переименовав в OpenGL.dll). Всё равно Userlib not found.
|
Re: blitz3D + OpenGL
хххммм...и действительно, всё упёрлось во врапер оной единственной функции wrapChangeDisplaySettings, которую набросал на си. при обращении к функции, не находит файл..странно, но файл есть. проверял на нескольких компах в канторе. странное дело....
код врапа: Код:
#include"string.h" wrapChangeDisplaySettings(DM_PELSWIDTH Or DM_PELSHEIGHT Or DM_BITSPERPEL Or DM_DISPLAYFREQUENCY, GlWinW,GlWinH,32,CFD_FULLSCREEN, 0) может чтото не так ещё делаю? хм... |
Ответ: blitz3D + OpenGL
Да твоя поделка такая же кривущая, как и ксорс. Одно гавно вокруг (
|
Re: blitz3D + OpenGL
Squid, OpenGL не моя поделка если что)))
с другой стороны - умееш лучше - покажи класс! |
Ответ: blitz3D + OpenGL
Я тоже кривущей херней занимаюсь.
|
Ответ: blitz3D + OpenGL
"User lib not found" выдаёт. Может ему нужен .decls?
|
Re: blitz3D + OpenGL
ошибку выдаёт, потому что я забыл в архив положить две либы ещё - CG.DLL и CGGL.DLL
однако проблема теперь не изза этого. проверил на нескольких компах в канторе, всёровно не видит, не желает находить библиотеку wrap.dll. почему не могу понять. на моём компе и дома всё чётко. пробую избавица от враперов путём исплользования апи винды. нахрапом взять не получается. вся проблема в том. что посути надо делать там свой обработчик, функция типа WndProc долждна быть, её адрес передовать в класс окна. по этому адресу потом винда делает вызов нашего обработчика. вот тут и проблема - блиц не желает передовать в чистом виде адреса функций. был вариант использовать FastPointer, однако там тоже такая же проблема - передача адреса функции блица в Апи винды вызывает вечный цикл при выходе, переполнение стэка и как следствие - MAV... ищу пути решения. |
Ответ: blitz3D + OpenGL
Так может для wrap.dll нужен wrap.decls? Да и для остальных либ. Ты ж с блицем работаешь...
|
Re: blitz3D + OpenGL
файл деклс требуется только на момент разработки. после компиляции его можно выкинуть! т.е. он не требуется бинарнику.
|
Ответ: blitz3D + OpenGL
Честно говоря не знал... Хм, а ведь мог бы догадаться...
|
Re: blitz3D + OpenGL
ну и что? у каво есть какие соображения по теме фуллскрина? сейчас проблема вот в чём:
включается фуллскрин, но к сожалению любое аськоно окошко или какое-нить оповещение или другое всплывающее окно, сразу становица поверх нашего окна, т.е. чужое окно временно видно на нашем. это не гут. в АПИ венды ест ь такая штука, WM_KILLFOCUS, в обработчике окна. но тут тоже проблема. на блице его написать можно, но передать в апи венды нереально. на си написать тоже смутно, т.к. хз в чм дело, дома работает, а на работе нет, да и перехватывает этот сишный обработчик все события. т.е. если мы пишем на блице условие типа if keydown(key) то оно уже не будет отработано в этом случае. думаю вот, может можно как то сделать средставми блица "потерю" и возврат фокуса окна? т.е. тут надо отработать такие манипуляции как кнопка вин, или альт таб, вин таб, контрол шифт эскейп и подобные. |
Часовой пояс GMT +4, время: 13:34. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot