Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 3D-программирование

3D-программирование Вопросы, касающиеся программирования 3D мира

Ответ
 
Опции темы
Старый 04.03.2009, 23:09   #16
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: Чёрное окошко перед запуском проги на B3D

нда понял как работает - кидаем exe или runtime.dll на окошко, и оно патчицо, но окошко пропадает совсем.
сначала кинул exe, окошко пропало но прога работала (проверил movemouse'ом), кинул dll и всё - ниодна прога ни в одном режиме не компилится (тоест компилится но окна проги невидно)... так что видно для старых версий...

а я се блиц запакал
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ABTOMAT (05.03.2009)
Старый 04.03.2009, 23:41   #17
-=Jack=-
ПроЭктировщик
 
Аватар для -=Jack=-
 
Регистрация: 10.01.2009
Адрес: хз
Сообщений: 177
Написано 18 полезных сообщений
(для 44 пользователей)
Ответ: Чёрное окошко перед запуском проги на B3D

Просто после этого нужно ещё и показать окно, после того, как оно было скрыто. Пока вы разбирались с этой прогой, я сделал аналог. Эффект тот же - окошка нет и не появляется. Нужно просто писать ShowWindow в начале. Хотя есть у меня одна идейка...
__________________
Я бы изменил мир, но Бог не даёт исходников...
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 00:16   #18
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений
(для 6,853 пользователей)
Ответ: Чёрное окошко перед запуском проги на B3D

Народ!
Вы не по тому пути пошли.
Прошу ознакомится.
Decls :
.lib "user32.dll" 
ShowWindowhwnd%, show% ) 
Код программы:
ShowWindowSystemProperty"AppHWND" ), False )
Delay(3000)
ShowWindowSystemProperty"AppHWND" ), True )
Print 
"Hello!"
WaitKey() 
Какой мы имеем результат?
Окно появляется(мы успеваем его заметить), пропадает, ждём 3000 мс и оно появляется.
Отсюда видно что в B3D управление коду программиста передаётся не сразу. Такчто варианта кроме лаунчера не вижу.

Но растраиватся не стоит.
Буду капать дальше и глубже.
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 00:28   #19
-=Jack=-
ПроЭктировщик
 
Аватар для -=Jack=-
 
Регистрация: 10.01.2009
Адрес: хз
Сообщений: 177
Написано 18 полезных сообщений
(для 44 пользователей)
Ответ: Чёрное окошко перед запуском проги на B3D

>Окно появляется(мы успеваем его заметить)
А для того, чтоб не успавали и есть та прога
__________________
Я бы изменил мир, но Бог не даёт исходников...
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 00:59   #20
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений
(для 6,853 пользователей)
Ответ: Чёрное окошко перед запуском проги на B3D

Почти доделал!
Оказалось что создатели блица сделали своему окну отдельный тип
Blitz Runtime Class
По нему можно выцепить любое Blitz3D окно и захайдить его.
Немного подождать и показать!

Чёрт! никак не послать SendMessage блицом
Чёрт!

Чёто не пойму как сообщить лаунчеру что инициализация состоялась.
И ещё одна проблема...
Не поспевю схайдить... ((
При создании блиц окна оно имеет странный класс походу

Выкладываю пока что есть.
Может кто поможет.

Программа Project2.exe запускает Game.exe потом
ищет окно по классу(с любым текстом) и прячет его на две секунды.


Файл:
BlitzNoWidow.zip
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti

Последний раз редактировалось Randomize, 05.03.2009 в 01:33.
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 01:38   #21
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Чёрное окошко перед запуском проги на B3D

Ну, по-моему, написать программу-загрузчик куда проще, чем ковырять компилятор...
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 01:46   #22
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений
(для 6,853 пользователей)
Ответ: Чёрное окошко перед запуском проги на B3D

Ну да...
Но чёт я запарился.
Создатели блица отожгли.
Мне надо быть реактивным чтоб понять.
Класс Blitz Runtime Window получает окно только когда оно на стадии Runtime. Когда передалось управление коду.
Но до этого какаой оно имеет класс остаётся загадкой.
Выход один: Запуск приложения под калпаком и полный анализ.
Займусь.
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 01:53   #23
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Чёрное окошко перед запуском проги на B3D

Можно WinSight'ом поковырять, или попробовать поймать окно функцией GetForegroundWindow.
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 03:13   #24
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений
(для 6,853 пользователей)
Ответ: Чёрное окошко перед запуском проги на B3D

Ксо!
Blitz3D`шное окно не принимает никаких сообщений во время инициализации! Оно игнорит любые обращения.
Единственное что с ним можно сделать это прикрыть грудью(SplashScreen) или сесть за дизассемблер и крафтить патч.

* Бугога бугога я сажусь за IDA

Мда... Не силён я в крякинге

ЧЁРТ! Я в экзешнике вот что нашол:
_begin
_leave
_DATAh
_LIBS
_MAIN
_bbRestore
_bbLoadLibs
_begin
_leave
_fgraphics3d
_fcreatecamera
_fcreatecube
_fcreatelight
_fpositionentity
_fturnentity
_frenderworld
_fflight
_fkeyhit
_fend
_DATA
_LIBS 
Смотрите внимательно сорец проги:

Graphics3D 800,600,32,2

cam
=CreateCamera()
cube=CreateCube()
CreateLight()
PositionEntity cam,0,0,-10

Repeat
    
    TurnEntity cube
,5,0,5
RenderWorld
Flip
Until KeyHit
(1)
End 
Интересно что это такое...
Ладно буду дальше ковырять
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti

Последний раз редактировалось Randomize, 05.03.2009 в 03:33.
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 03:25   #25
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Чёрное окошко перед запуском проги на B3D

далось вам это окошко...
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо HolyDel за это полезное сообщение:
-=SCiP=- (05.03.2009), ABTOMAT (05.03.2009)
Старый 05.03.2009, 03:34   #26
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений
(для 6,853 пользователей)
Ответ: Чёрное окошко перед запуском проги на B3D

Сообщение от HolyDel Посмотреть сообщение
далось вам это окошко...
Да мне это мне самому просто интересно
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 09:27   #27
jimon
 
Сообщений: n/a
Ответ: Чёрное окошко перед запуском проги на B3D

Randomize
программы на blitz3d в некоторой степени можно декомпилировать обратно в код b3d
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
impersonalis (05.03.2009)
Старый 05.03.2009, 09:32   #28
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: Чёрное окошко перед запуском проги на B3D

так эт самое - когда прогу запускаешь она создает окошко и потом применяет твой настройки графики или оно удаляется и появляется другое ?
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 09:39   #29
-=Jack=-
ПроЭктировщик
 
Аватар для -=Jack=-
 
Регистрация: 10.01.2009
Адрес: хз
Сообщений: 177
Написано 18 полезных сообщений
(для 44 пользователей)
Ответ: Чёрное окошко перед запуском проги на B3D

>так эт самое - когда прогу запускаешь она создает окошко и потом применяет твой настройки графики или оно удаляется и появляется другое ?
Нет. То же самое, только меняется размер.

Randomize, да всё ж ясно. Я сам за идой вчера посидел, нашел создание окна, изменил ему стиль(убрал WS_VISIBLE). Как я понимаю, та прога делает то же самое. Теперь это окно - невидимое. Но прикол в том, что и после начала выполнения кода блица оно не появляется. Вот тут то и нужно использовать ShowWindow (или посылку WM_SHOW) для окна. И не нужно смотреть его класс. Для определения окна есть функция SystemProperty("AppHWND").
__________________
Я бы изменил мир, но Бог не даёт исходников...
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 12:51   #30
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Чёрное окошко перед запуском проги на B3D

У меня по ходу получилось Всё намного проще
Сначала в коде программы показываем наше окошко при помощи WinAPI. Это можно сделать как писалось выше (прописать в свой decls), но у меня тут уже готовый есть (см. аттач).
0. decls из аттача ставим на Блиц
1. Итак, после объявления граф. режима прописываем показывание окошка юзеру:
api_ShowWindow ( SystemProperty( "AppHWND" ), 1 )
2. Компилим в ехешник не в дебаг моде.
3. Запускаем прогу с немецкого форум (в аттаче поклал тож)
4. На неё перетаскиваем ехешник, она патчит

Пока ещё не всё проверил, но похоже патченный ехешник работает норм. У меня версия блица 1.98.
УПД: Перепроверил на рпгшке, всё работает как следует! Кстати, если используется полноэкранный режим, то юзать api_ShowWindow необязательно: окна-то нет

Спасибо гансам за убитое окошко.

З.Ы. Вроде можно так же пропатчить runtime.dll и тогда все ехешники будут так компилиться. Только чё-то лениво мне везде прописывать показ окна...
Но для конечной версии проги подходит отлично!

З.З.Ы. Для Ксорса же вообще идеально - ничего не надо прописывать для показа окна... Объясняется просто: Ксорс создаёт собственное окно, и данный фикс на него не воздействует
Вложения
Тип файла: zip StartupFix.zip (182.2 Кб, 380 просмотров)
Тип файла: zip User32.zip (6.5 Кб, 394 просмотров)
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена


Последний раз редактировалось ABTOMAT, 26.09.2009 в 01:10.
(Offline)
 
Ответить с цитированием
Эти 7 пользователя(ей) сказали Спасибо ABTOMAT за это полезное сообщение:
Alex_Noc (05.03.2009), Android (05.03.2009), baton4ik (15.04.2010), BlackOut (09.12.2009), Harter (05.03.2009), Randomize (05.03.2009), Tadeus (05.03.2009)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
API (Окошко в полноэкранном режиме Blitz'a) =MAK$= Библиотеки 2 06.11.2009 02:31
Скрытие проги ssman Основной форум 7 21.07.2009 14:25
Нужно ли выгружать все ресурсы игры перед выходом? ELIAS Blitz3D 6 15.07.2009 10:09
Проги для просмотра форума Akima Болтовня 3 22.01.2007 14:49


Часовой пояс GMT +4, время: 12:38.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com