Так что я продолжаю настаивать на своём: вайн либо игнорирует часть тяжелых инструкций (доп. эффекты, которые вы не замечаете когда пропадают), либо читерит при вычислениях (считает что-то с меньшей точностью например), либо просто железяка позволяет игрушке бегать быстрее а он не сильно то синхронизирует всё это дело.
gepar, вот тут вспоминается мой старый комп, операционка Windows 2003 Server (сейчас, кстати, тоже в ней сижу) и игра STALKER. Устанавливаю на XP, запускаю - тупит чудовищно! Слайдшоу. Ага, перезагружаюсь в Win2k3 и устанавливаю игру там. Летает. Потом читаю откровения разработчиков, где они признаются, что специально утяжелили игру по заказу кого надо, чтоб, стало быть, недоразвитые юные геймеры теребили своих папок и мамок по вопросу покупки нового компьютера для сталкера...
Если честно то ничего не понял: если, как ты говоришь, разработчики подсунули тормозящую утку то почему она на твоей win2003 не проявилась ? Это больше похоже на истории в детстве о том что в конце ну погоди мультик показывают - никто не проверял, но ходят слухи ...
Ба, да я вижу в теме завелись системные программисты собрались. Рад встрече.
Бывает настолько забавно, что OpenGL в виндовой игрушкой работает медленее, чем D3D под тем же вайном. А все потому, что рендереры по-разному написаны.
факты. Не "бывает/теоретически/ я от могу так написать", а факты давай.
К тому же не все в вайне полностью копирует винду
Естественно не копирует, а знаешь почему? Да потому что windows это тебе не линукс и на запрос "скачать_исходники_dx.zip бесплатно без смс" почему-то ничего не находится, а всё потому что не open source это.
Во-первых тема производительности транслятора...
Понимаешь ли, после слова трансляция сразу становится понятно как это работает и что это даёт. Это как сранвивать что ты общаешься с кем-то напрямую или же между вами стоит посредник, который сначала слушает одного, потом думает, а потом передаёт другому своими словами стараясь в точности передать что сказал первый.
например directdraw по умолчанию идет через 3D, в винде софтварно. Что это означает ?
А это означает что кто-то невнимательно читал (читал ли?) доку, direct draw это как универсальный инструмент: железяка может - на обрабатывай, железяка не может - ладно, справимся программным путём.
Видел я куски исходников двухтысячной и мельком сравнил некоторые либы. Не раз удивлялся, как что-то сделано ну совсем через задницу.
Мсье в силах хацкнуть либы MS и потом ещё понять их и раскритиковать их ? Да ты крут. Ну давай, покажи класс - покажи же их эти плохие либы, пофиг что на них уже 13 лет пыль собиралась, просто продемонстрируй хоть как-то мастерство. Надеюсь либы были хоть как-то с dx связаны, а не просто какие-то библиотеки ie ?
Бывает веселее, когда в коде или бинарнике встречается маска файлов драйверов видеокарты, и в одном случае работает оптимизированный или нормальный код, а в другом - чуть ли не с обмолотом пустых циклов.
Я понимаю что теоретически это сделать никто не мешает, но это уже темы не касается и отвечу сразу почему: если в коде есть пустой цикл, допустим тупо не замаскированно 10000 раз считается число пи с точностью до n, так вот ваш вумный вайн ну никак не поймёт что это нафиг не надо нигде и так же честно должен будет отработать это всё так что опять же таки здесь оптимизации взяться негде.
Добавлено позже: момент проталкивания XP встречалось такое - вместо BlahBlah ставим BlahBlahEx - на 98ой падает.
Да ладно? Что правда? А угадай почему оно падает: да потому что Ex это расширенные функции которые появились позже и их тупо в win98 нет вот поэтому и не работает оно на старой ос; Ex функции добавляют доп. функционал (обычно это +1 аргумент дающий чего-то к оригин. функции) и не обязательно используя их задействовать эту доп. фичу (как всем известно в WINAPI тупо считай половину аргументов приходиться устанавливать в NULL), да только обычно(99%) у Ex функции есть доп. аргумент и неудалив его не соберёшь.
Насчёт более быстрой работы - враки это всё, не ну реально Ex функций у MS не столь много да и используют их не постоянно, а от замены пары сотень вызовов (особенно если поверить что там не использовались доп фичи и передавались null,а ex функция использовалась просто так и работала вообще говоря также) тех функций ну уж точно производительность не выростет, а если и выростет (допустим чисто теоретически что Ex функции использовали больше проверок) на 0.5% то разве это кто-то заметит? Или она у вас ростёт так же как производительность в wine по сравнению с нативной работой под windows? Если да то тогда мне всё понятно