Угу, поддерживаю! Их бин хотеть это )))Цитата:
Сообщение от Spinor
Вид для печати
Угу, поддерживаю! Их бин хотеть это )))Цитата:
Сообщение от Spinor
А-а-а, народ, я похоже сильно от жизни отстал. Ткните носом, кто такой Акелла (надеюсь это все таки не тот который промахнулся у Киплинга :) ) и что такое КЗ? Кроме как "Короткое Замыкание" никаких ассоциаций не возникает :(Цитата:
Сообщение от NewLander
Но славы не получится. 1.0 RC уже выложил :D
Ну дык эта-а-а... Сказал же, что идея и мне понравилась, так что сделаю.Цитата:
Сообщение от Orion33
Пока приоритеты и следовательно очередность реализации расставлены примерно так:
1) Прога ставиться в любую папку (не обязательно туда же где ИЛ расположен). Этот пункт на первом месте, дабы не захламлять папку ила подкаталогом с пресетами.
2) Пресеты
3) Выбор активного пользователя.
4) Консольная установка требуемого пресета.
В промежутках возможны какие нибудь украшательства :)
Настройки кривых отклика мне, если честно, не нужны. Но ОЧЕНЬ хотелось бы видеть в твоей проге вот какую функцию:
Есть мнение, что DirectX выставляет минимальную мертвую зону на все джои и оси. При этом эта мертвая зона не убирается никакими настройщиками и дровами и нигде не отображается. Увидеть ее присутствие можно, к примеру, в джойтестере. Для этого поводи джой совсем чуток через какой-то центр - увидишь маааханькое запаздывание. Пытался сам решить эту проблему - не вышло. Если сделаешь - будет просто супер прога у тебя! ;)
ЗЫ: выкладываю мини-прожку, в которой эту мини_мертвую_зону хорошо видно. На интерфейс не смотри - ваял быстро, только для теста :)
Ого! Я не программил ничего лет 5 минимум а тут такие пожелания....Цитата:
Сообщение от Katmai
Очень бегло посмотрел пару статей на счет этого в DirectX SDK. Смотрел действительно бегло, спать хочется, но вроде бы,идея следующая. Все эти вещи типа мертвой зоны, выставляются виндой при калибровке джойстика. Значения тойже мертвой зоны (и не только) можно считать и записать программно. Вопрос только в том, сохраняются ли эти данные после завершения проги или действуют только в то время, когда она запущена.
Кроме того, меня слегка смущает, что в win2000/XP тот же DXTweak не позволяет сохранить выставленную мертвую зону, т.е. возможно что это самой операционкой не поддерживается.
Короче говоря попробовать можно, но не обещаю. Вдобавок что изменение аппаратных параметров джоя, типа калибровочных данных, не вполне соответствует задачам, для которых пишется JoyConfig. Т.е. утилитка заточена все же на ИЛ прежде всего.
Если уж заниматься тем что ты просишь, то делать нечто новое, типа DXTweak.
Акелла - доблестный отечественный разработчик, отправивший в печать невероятно глючную версию 0.99 игры "Корсары 3" (К3) :rtfm:Цитата:
Сообщение от Oleg_BS
Димыч, это у тебя траблы какие-то... Я, во-первых, этого никогда не замечал, во-вторых, проверил твоей прогой: расстояние между 1-м и 2-м отсчетом у меня такое же, как и между 0-м и 1-м. То есть никакой МЗ нету...
Переехали в "Важные темы". Есть мысля переименовать подраздел из "Важных тем" в "Доп. программы и файлы для Ил-2." Пока мыслЮ.
Нет. Это не только у меня траблы! Это мнение очень авторитетных товарищей ;) К тому же, а ты правильно замерил? Когда проводишь джой через центр - крестик замирает на долю секунды - ты мог не заметить...Цитата:
Сообщение от Orion33
to Oleg_BS:
Эта МЗ не отображается ни ДхТвиком ни дровами, но она есть :)
-Ты видишь суслика?Цитата:
Сообщение от Katmai
-Нет.
-А он есть!
(с)
А если серьезно, то даже если она существует, то как к ней добраться предлагаешь, если DirectX ее не видит?
Или видит таки?
Ты свой пример когда писал, напрямую с DirectX общался или компоненту (WinAPI) использовал? Если напрямую, то попробуй считать состояние джойстика средствами ДиректХ (не координаты, а настройки). Если окажется что там МЗ=0 то врядли тебе кто-то кроме дядюшки Билла сможет помочь.
Читал ДиректХом, значения МЗ и насыщенности можно увидеть в файле, что я выкладывал... МЗ=0 ((( Поэтому я и не смог решить проблему, как не пытался! Думал может у тебя получится.Цитата:
Сообщение от Oleg_BS
Тогда явно не судьба. Кроме как читать/установить через DirectX мне в голову ничего не приходит.Цитата:
Сообщение от Katmai
А то что ты описываешь это точно не проблема контроллера/драйвера?
Поскольку информации о новых багах не поступило, будем считать, что релиз состоялся. :thx:
Сразу выкладываю версию 1.1 поскольку была добавлена возможность устанавливать начальное и конечное значения кривой. Визуально изменения можно увидеть на скрине в первом посте.
Теперь вплотную приступаю к работе с профайлами
Катмай, ну ты знаешь мое отношение на счет мнения твоих "авторитетных" ;)
А проблема таки в джое. Я ночью вспомнил, что у тебя Ево. А там МЗ сидит в прошивке. Медицина тут явно бессильна.
А ты знаешь мое отношение к твоему отношению на счет моих "авторитетных" мнений ;) :DЦитата:
Сообщение от Orion33
ЗЫ: Ну не судьба так не судьба...
Выложена версия 1.2.
Изменений два, но зато какие :)
1) Программа может устанавливаться в любой подкаталог (не обязательно в каталог с игрой). При первом запуске, появится запрос на указание пути к каталогу ИЛ-2, а точнее к файлу conf.ini в нем. Этот путь сохраняется в ini файле программы (JoyCtrl.ini).
Если каталог с игрой впоследствии будет перенесен в другое место, при очередном запуске программа это определит, и вновь выдаст запрос на указание пути к игре.
2) Реализована работа с профайлами. Профайлы необходимо сохранять в каталоге Profiles, который расположен в том же каталоге где и программа. Этот каталог с примером профайла помещен в архиве с текущей версией. Профайлы, расположенные в другом месте программе будут недоступны.
Внимание ВАЖНО!
1)При выборе пресета из выпадающего списка, с перечнем существующих профайлов, происходит замена Ваших настроек на настройки прописанные в выбранном пресете. Никаких дополнительных вопросов и подтверждений не задается. Но, в conf.ini эти измененые настройки попадут только после нажатия кнопки "Запись в Conf.ini".
2) В списке пресетов всегда первым пунктом указан Conf.ini
При выборе этого пункта, производится повторное считывание содержимого conf.ini. Поэтому, если в процессе настроек, что-то Вам не понравилось, Вы всегда можете вернуться к настройкам прописанным в Conf.ini.
Все, на несколько дней беру перерыв. Замахался я по две версии в день клепать :D
Пока тестируйте и отписывайте об ошибках, если вдруг выползут.
Проверил на своей машине - всё работает.
Не помню в какой ветке форума и кто приводил кривые отклика, но мне думается, будет небесполезной фичей включить их в предустановки с регулятором коэффициента линейности (вроде тех же +/- 10% ).
Примеры кривых с нулевым сдвигом:
100 100 100 100 100 100 100 100 100 100 - линейная кривая отклика, коэффициент линейности 100%
91 92 93 94 95 96 97 98 99 100 - коэфф. линейности 90%
82 84 86 88 90 92 94 96 98 100 - коэфф. линейности 80%
73 76 79 82 85 88 91 94 97 100 - коэфф. линейности 70% - тангаж и крен ST290
64 68 72 76 80 84 88 92 96 100 - коэфф. линейности 60%
55 60 65 70 75 80 85 90 95 100 - коэфф. линейности 50%
46 52 58 64 70 76 82 88 94 100 - коэфф. линейности 40%
37 44 51 58 65 72 79 86 93 100 - коэфф. линейности 30%
28 36 44 52 60 68 76 84 92 100 - коэфф. линейности 20%
19 28 37 46 55 64 73 82 91 100 - коэфф. линейности 10%
10 20 30 40 50 60 70 80 90 100 - коэфф. линейности 0% - качалка X45.
Правда,но на тротлах нет мз,и на некоторых джоях нет даже на х,у....,дед бендер всеж мз уберает в дровах с 6 до 0,но при 0-ле остается немало заметная мз(касаемо сайтек).Поэтому приходится "русить" тротлами.Цитата:
Сообщение от Katmai
Поэтому хотелось бы ,что б кто силен всеж попробовал дать окончательный ответ,ну и конечно решить проблему,если она решаема.
Спасибо за репорт. Все работает - это хорошо. :)Цитата:
Сообщение от LSA
Это предложение было в ветке про IL2-Config.Цитата:
Не помню в какой ветке форума и кто приводил кривые отклика, но мне думается, будет небесполезной фичей включить их в предустановки с регулятором коэффициента линейности (вроде тех же +/- 10% ).
Примеры кривых с нулевым сдвигом:
100 100 100 100 100 100 100 100 100 100 - линейная кривая отклика, коэффициент линейности 100%
91 92 93 94 95 96 97 98 99 100 - коэфф. линейности 90%
82 84 86 88 90 92 94 96 98 100 - коэфф. линейности 80%
73 76 79 82 85 88 91 94 97 100 - коэфф. линейности 70% - тангаж и крен
[skiped]
10 20 30 40 50 60 70 80 90 100 - коэфф. линейности 0% - качалка X45.
Я думал над этим, более того, хотел внаглую содрать реализацию этого дела у Филлипка. :D В итоге решил сделать более универсальный (на мой взгляд) вариант - ввести регулируемые начальное и конечное значения кривой.
Попробую пояснить чем это лучше.
1) Обязательно найдется хотя бы один человек, который захочет кривую с начальным значением не 73 или 82, а, к примеру, 75 или 80. Что тогда? Двигать ручками каждый ползунок?
В моем варианте достаточно установить требуемое начальное значение и выбрать тип кривой (линейная или парабола). Все! Требуемое достигнуто, а телодвижений при этом получилось не больше чем при выборе стандартного коэффициента линейности.
2) Мой вариант позволяет создавать как "прямые", так и "обратные" кривые. В том смысле, что конечное значение может быть меньше начального. Стандартные кривые этого не позволят. Ну уж про установку начальных/конечных значений больше 100 я вообще молчу.
3) Ну и наконец. Прописывание стандартных кривых позволяет определить только линейные кривые. Мой вариант позволяет работать и с параболой., и с горионтальными прямыми. Чтобы это реализовать предлагаемым методом, как минимум, пришлось бы пристраивать дополнительные элементы управления. А их к сожалению уже лепить некуда. Тот маленький неиспользованный кусочек формы (между работой с профайлами и устиановкой кривых) оставлен мной для выбора активного юзера в игре. (элементы управления уже стоят, даже в версии 1.2 , но они невидимы ;)
Можно конечно увеличить форму, но тогда либо "красота" нарушится, либо придется переписывать приличный кусок программы, в том плане, что все координаты положений джоя, кривой и т.п. графических объектов придется менять/пересчитывать. Если честно у меня нет особого желания этим заниматься. Не от лени (хотя она у меня природная :D ), а из-за того, что овчинка выделки (ИМХО) не стоит.
Убедил?
Эээ, поправочка. Кривые эти не параболические, а экспоненциальные. И крайнее их значение всегда 100. А вот первое может быть действительно разное, и от этого и зависит коэффициент нелинейности. Так что логично сделать решение экспоненциального уравнения с заданием первого значения (последнее всегда 100), и по найденному коэффициенту (показателю экспоненты) строить всю кривую.
Не знал, вечером опробую...Цитата:
Сообщение от Oleg_BS
Да уж, что есть, то есть... Ну и ладно. БЖСЭ.Цитата:
Сообщение от Oleg_BS
Когда же, когда?! У меня 4 пользователя, уж я б потестил!.. :drive:Цитата:
Сообщение от Oleg_BS
Э... что-то мне подсказывает, что использование ООП в твоей программе минимально?Цитата:
Сообщение от Oleg_BS
Гы! Все равно программа будет такой, какой ты ее напишешь. :DЦитата:
Сообщение от Oleg_BS
ps. А может, учесть предложение Ориона33 из предыдущего поста? Т.е. задавать коэффициент? Изыскать резервы и втиснуть в форму "задавалку" коэффициента?
Когда то я в математике был очень даже силен. Но к сожалению это было когда то. Забыл даже многие элементарные вещи.Цитата:
Сообщение от Orion33
Посему вопрос. Я правильно понимаю, что экспонента - это e в степени i, где у=2.718... а I - номер ползунка? Ну естественно все это множится на определенный коэффициент и добавляется начальное значение. Итого формула для расчета = нечто вроде y=Nach + exp(i)*k. Так?
У меня по кнопке "парабола" считается по формуле y=nach+sqr(i)*k.
Т.е. у зависит от I в квадрате. ИМХО это все таки парабола? Или таки экспонента? :) Не, мне название кнопки поменять - дело одной минуты, просто самому разобраться хочется.
Второй вопрос. А почему это конечное значение кривой должно быть всегда = 100? У меня на РУСе, конечные значения = 140 (чтоб ручку не ломать, дотягивая до того момента, пока квадрат на максимум отклонится. Мне удобнее в таком случае установить кривую типа 100..140, при чем как раз параболу (или экспоненту), чтобы большая часть хода была практически линейной и по 100, а уж в конце - резкий подъем.
Вчера вышел на временную работу, с последней постоянной не сложилось, а новую пока не нашел. Так что пока сидел дома, писал без проблем, потом деньги закончились, а кушать хочется всей семье...Цитата:
Сообщение от LSA
Короче говоря ухожу рано, прихожу поздно, и похоже без выходных. Так что немножко терпения плиз. Будет, обязательно будет.
Но по срокам пока ничего обещать не могу. Надеюсь что через недельку сделаю.
Чутье тебя не подвело :) Я как программер становился в начале-середине 90-х, к концу 90-х писать уже практически перестал, карьера пошла :) . Короче говоря, родной для меня все же процедурный подход. Чужой исходник с использованием ООП ессно прочитаю и пойму, и по аналогии свое сваяю, но вот когда с нуля пишу, то все больше по старинке. Буду писать что-то следующее (есть уже пара задумок) попробую все делать "по науке", ну а JoyCtrl уже пожалуй переделывать поздно. Разве что, когда уже все реализую, потом неспеша переделаю и по прошествии годика выпущу версию 2.0 "на новом движке" :DЦитата:
Э... что-то мне подсказывает, что использование ООП в твоей программе минимально?
Речь идет о коэффициенте наклона кривой? Т.е. тот вариант что ты описывал в своем прошлом посте?Цитата:
ps. А может, учесть предложение Ориона33 из предыдущего поста? Т.е. задавать коэффициент? Изыскать резервы и втиснуть в форму "задавалку" коэффициента?
Тогда встречный вопрос, чем не нравится вариант с начальным-конечным положением кривой? Повторюсь, мне кажется что это более универсальный вариант. Что даст выбор коэффициента такого, что нельзя реализовать с помощью выставления нач/кон значений?
А вот то, что с помощью коэф. нельзя реализовать я описал в предыдущем посте.
Не горит, делай без спешки, качественно.Цитата:
Сообщение от Oleg_BS
:cool: ООП достаточно один раз "вкурить" и потом пойдет как по маслу. Рекомендую! Зело экономит время...Цитата:
Сообщение от Oleg_BS
Убедил. Просто я твой вариант еще не пробовал. Вечером испытаю.Цитата:
Сообщение от Oleg_BS
Цитата:
Сообщение от Oleg_BS
Что бы это значило?