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

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

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

Ответ
 
Опции темы
Старый 10.06.2010, 13:59   #16
Greymem
Нуждающийся
 
Регистрация: 31.05.2010
Сообщений: 63
Написано 3 полезных сообщений
(для 3 пользователей)
Ответ: Оптимизация или Разделение программы на исполняемые компоненты.

Еще раз всем спасибо за участие в обсуждении!!!

Сообщение от Randomize Посмотреть сообщение
Поведайте, как. Просто интересно, что именно помогло.



Я уже предлагал.
1) Использование выносных скриптов.
При использовании этого способа нужно помнить, что скорость выполнения скриптов низка. И для релизации поиска пути или расчётов физики использование скриптов не приемлимо.

http://www.blitzmax.com/Community/posts.php?topic=68845

2) Написание dll.
Подходит для сложных рачётов.
Кроссплатформенность отпадает.
Подробнее тут:
http://www.progz.ru/forum/index.php?showtopic=27569

Помогло использование рамки и импорт модулей.

Я изначально писал, что все расчеты у меня производятся с собственными типами, которые я создаю непосредственно в самом коде.
Поэтому я не хотел использовать DLL, и-за того, что не знаю как в DLL производить расчеты с моими собственными типами.
Есть варианты использование своих типов в DLL? Или хотя-бы разбитие в главном файле типа так, чтобы экспортировать в DLL парраметры по умному и получать значения из DLL непосредственно в переменную своего типа?

Вот это для меня гемор. А если бы там было просто "int+int" то давно бы уже вынес в DLL
(Offline)
 
Ответить с цитированием
Старый 10.06.2010, 15:53   #17
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений
(для 6,853 пользователей)
Ответ: Оптимизация или Разделение программы на исполняемые компоненты.

Пример реализации всех типов, расчетов внутри dll:
Xors3D, PhysX wrapper, Newton wrapper.
Посмотри внимательно и подумай как оно работет.
У длл есть функции получения и занесения параметров в тип.
Тип как объект получить нельзя. (хотя можно сериализировать, но это накладно)
Внутри dll у каждого типа свой уникальный ID (хендп)
При создании нового объекта возвращай его функцией и используй его при получении.
__________________
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)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Greymem (01.08.2010)
Ответ


Опции темы

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

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


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


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