Курилка программистов, Флуд на около программерские темы |
Здравствуйте, гость ( Авторизация | Регистрация )
Курилка программистов, Флуд на около программерские темы |
14.09.2018, 22:16
Сообщение
#241
|
|
Почти Мастер Репутация: 111 Группа: Участник Сообщений: 1158 Награды: 3 Регистрация: 07.08.2015 |
Хотелось бы заценить Visual Studio 2005 Professional.
XP есть, есть исходники CS, а этой студии нет. Экспресс не предлагать. Можно в ЛС. |
 
|
|
|
|
14.09.2018, 23:07
Сообщение
#242
|
|
Почти Игроман Репутация: 187 Группа: Участник Сообщений: 647 Награды: 4 Регистрация: 05.05.2007 |
А зачем тебе эта дрянь? Скачай лучше борланд.
|
 
|
|
14.09.2018, 23:22
Сообщение
#243
|
|
Почти Мастер Репутация: 111 Группа: Участник Сообщений: 1158 Награды: 3 Регистрация: 07.08.2015 |
А зачем тебе эта дрянь? Скачай лучше борланд. Уже пробовал, жуткая картина в масле. Собрал компилятор геометрии для ЧН и ЗП в визуалке 2008. Работает быстрее, чем родной из СДК 07. Вырезал баг инвалид-фейсов, и еще вырезал вылет по битой статике. Зацените, и отпишитесь, что не так , если что. Сообщение отредактировал Expropriator - 14.09.2018, 23:57 |
 
|
|
15.09.2018, 02:15
Сообщение
#244
|
|
Почти Мастер Репутация: 111 Группа: Участник Сообщений: 1158 Награды: 3 Регистрация: 07.08.2015 |
|
 
|
|
15.09.2018, 21:09
Сообщение
#245
|
|
Почти Мастер Репутация: 111 Группа: Участник Сообщений: 1158 Награды: 3 Регистрация: 07.08.2015 |
Лайтмапы компилит как надо, просто я забыл шейдеры нормальные водрузить.
Вот еще вариант компилятора (собрал из СS 1.5.06 или 1.5.07 - непонятно пока, там обманка в номере): Кстати, компилятор геометрии компилит почти на 40% быстрее, а это почти в два раза ( если бы 50%). |
 
|
|
29.01.2019, 18:49
Сообщение
#246
|
|
Ололо, старый аккаунт <3 Репутация: 351 Группа: Участник Сообщений: 3187 Награды: 6 Регистрация: 25.02.2009 |
Ребят, в тригонометрии совсем слаб, гуглю, но что-то не нахожу ничего подходящего, либо формулы отражения вектора от поверхности, либо чего-то еще, но ничего не подходит, многое даже по смыслу.
Итак, представим, что у нас 3d пространство, имеется комната из 4х стенок. В ней двигается человечек. Все векторы - 3д, а не 2д, но мы, условно, это опустим, тк Z координата нам не важна, она меняться не будет. В комнате есть препятствия, на схеме они изображены залитыми прямоугольниками. Человечек начинает двигаться с случайным углом поворота, при встрече со стенкой он должен поворачивать ровно, к примеру, на 50 градусов и двигаться дальше до следующего столкновения. Схематично путь изображен красной линией (углы уж не соблюдал, простите). У каждой поверхности, с которой мы столкнулись, мы знаем нормаль этой поверхности, нормаль столкновения, точку столкновения, и так далее и тому подобное. Вопрос, как поворачивать его относительно поверхности на заданный угол? Либо я запрос составляю неправильно, либо просто не догоняю, но никак не могу сообразить, как это сделать. Т.е., зная вектор V, вектор-нормаль N, и угол a - надо найти вектор L |
 
|
|
29.01.2019, 19:52
Сообщение
#247
|
|
TECHNOSLAV 80 уровня Репутация: 379 Группа: Участник Сообщений: 5758 Награды: 6 Регистрация: 26.01.2014 |
StUnDeR, 180 - угол атаки - угол отклонения = угол отражения?
Смотри учебники физики про отражение и преломление света, там наглядно. -------------------- Ryzen 3700X
Arctic Freezer 33 eSports Duo 16GB DDR4 3600MHz Strix GTX 1080 TI |
 
|
|
29.01.2019, 19:55
Сообщение
#248
|
|
Доктор Игровых Наук Репутация: 544 Группа: Участник Сообщений: 3657 Награды: 9 Регистрация: 12.07.2007 |
StUnDeR, пробовал
У меня конечно мозг уже давно атрофировался по геометрии и такому матану но кажется ты ищещь примерно следующее: L.x = V.x * cos(a) - V.y * sin(a) L.y= V.y * cos(a) + V.x * sin(a) Хотя опять же извиняюсь если ошибаюсь. |
 
|
|
29.01.2019, 19:58
Сообщение
#249
|
|
Высший Игровой Бог Репутация: 1747 Группа: Супермодератор Сообщений: 12594 Награды: 15 Регистрация: 05.11.2009 |
StUnDeR, просто повернуть на стабильный угол после коллизии? Так проще простого, вот псевдокод:
Код onCollisionEnter(Object obstacle){ // метод вызывается один раз при каждом столкновении player.rotation += Vector3.up * 50; } Если же нужно поворачивать относительно стен независимо от угла столкновения, то начинать отсчет надо строго перпендекулярного относительно стены. Тут уже псевдокод не напишу. Нужно определить точку коллизии чтобы узнать угол вхождения в препятствие чтобы повернуть человечка строго перпендекулярно относительно стены (выровнять поворот, для удобства) и приплюсовать 50 градусов поворота (зеркально от точки коллизии). Можно еще поиграться с векторами движения банально отзеркаливая их, но тогда он будет отскакивать как мячик, а нам же нужен стабильный угол поворота? Т.е., зная вектор V, вектор-нормаль N, и угол a - надо найти вектор L Ты имел ввиду поиска угла a? Потому что вектора - это направление и скорость движения, а нам нужно их просто повернуть. PS: в тригонометрии тоже не шарю, просто в Unity с подобным сталкивался. -------------------- |
 
|
|
11.04.2019, 23:36
Сообщение
#250
|
|
Почти Мастер Репутация: 75 Группа: Участник Сообщений: 1168 Награды: 4 Регистрация: 10.11.2015 |
Вот тут все(в интернетах) утверждают что питон(python) самый лёгкий ЯП, и типа самый лучший, но по мне это просто ужас, синтаксис просто ужасный, какой дурак придумал, что блоки ограничиваются отступами, нету привычных скобок. Если бы XRay использовал питон, в качестве расширения, то я бы модингом никогда не занялся. Питон, он же питухон, мне мозг выворачивает.
-------------------- СТАЛКЕР только для ПК!
|
 
|
|
11.04.2019, 23:47
Сообщение
#251
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
какой дурак придумал, что блоки ограничиваются отступами, нету привычных скобок Решается две задачи: 1) степень говнокода, теперь не можно, а нужно писать код нормально 2) меньше знаков используется при написании, следовательно чуть быстрее будет набираться код (в теории) Первый пункт нивелирует все минусы данного подхода, имхо. Вот тут все(в интернетах) утверждают что питон(python) самый лёгкий ЯП Как по мне, так они с Lua +/- по сложности одинаковы. Впрочем, в Lua есть метатаблицы, а в Питоне нормальный ООП/классы из коробки Сообщение отредактировал RayTwitty - 11.04.2019, 23:52 -------------------- |
 
|
|
12.04.2019, 00:18
Сообщение
#252
|
|
Почти Мастер Репутация: 75 Группа: Участник Сообщений: 1168 Награды: 4 Регистрация: 10.11.2015 |
Нет, Lua раз 100 проще, питух (сокращенное имя питухона) по сложности равен С++ в последних редакций, я просто смотрю, и не понимаю как эта хрень работает, да и разбираться нет желания. Особенно бесит что некоторые используют питуха, там(модинг сталкера), где лучше справится С/С++/HLассемблер, например некоторые конверторы. Да и классы в Lua есть, ну и пусть реализованы через метатаблицы. А говнокод и есть сам питух со своим синтаксисом, читается плохо, работает медленно, много требует памяти, короче всё что надо для говнокодера, хуже, хуже дороже, т.к у говнокодера ЧСВ выше неба.
Сообщение отредактировал NanoBot-AMK - 12.04.2019, 00:20 -------------------- СТАЛКЕР только для ПК!
|
 
|
|
12.04.2019, 00:37
Сообщение
#253
|
|
BFG9000 owner
Половина землекопа Репутация: 247 Группа: Припаркованный аккаунт Сообщений: 1813 Награды: 3 Регистрация: 30.03.2010 |
питух со своим синтаксисом, читается плохо, работает медленно, много требует памяти, короче всё что надо для говнокодера, хуже, хуже дороже, т.к у говнокодера ЧСВ выше неба. Агрессивно написано, стиль текста намекает на отсутствие конструктива. Языки программирования - это, в первую очередь, инструменты для решения задач. Соответственно, под каждую задачу есть свой инструмент. К тому же, вижу проблему некорректного сравнения. Lua - простой и крохотный язык (но очень гибкий), цель которого - быть легким с маленькой VM, дабы интегрироваться в игры. С/С++/HLассемблер - вообще низкоуровневые компилируемые языки со статической типизацией, сравнивать с ними некорректно. Python - очень мощный и современный язык программирования, с огромным набором шикарнейших библиотек - для научных расчетов огромной точности, для построения и обучения нейронных сетей, для серверного и системного программирования и много еще чего. Современный программист должен владеть несколькими языками, и выбирать язык под задачу. На правах мимокрокодила -------------------- Hello worlds!
|
 
|
|
12.04.2019, 00:37
Сообщение
#254
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
Да и классы в Lua есть, ну и пусть реализованы через метатаблицы Классы реализуются через костыли или через сторонние расширения языка. Тут ни в какое сравнение не идет с нативными возможностями Питона. сам питух со своим синтаксисом, читается плохо Это, видимо, субъективно. Может просто непривычно поначалу)) работает медленно, много требует памяти Тут вот вряд ли. Нет, конечно плюсы быстрее, но в качестве интерпретируемого языка Питон очень часто используют в научной деятельности и в веб-разработке как раз за его скорость. Луа же больше используют как раз таки в играх. там(модинг сталкера), где лучше справится С/С++/HLассемблер Ты реально думаешь, что тот же сюжет проще программить и поддерживать на плюсах/ассемблере? iOrange, опередил, мне добавить нечего)) Сообщение отредактировал RayTwitty - 12.04.2019, 00:43 -------------------- |
 
|
|
12.04.2019, 01:14
Сообщение
#255
|
|
Почти Мастер Репутация: 75 Группа: Участник Сообщений: 1168 Награды: 4 Регистрация: 10.11.2015 |
В любом случае, питух это очень сложный ЯП, со сложным, трудно читаемым и не логичным синтаксисом. Тот же С++ в последних редакций тем же страдает, но в С++ я могу просто забить на его сложности и кодить в стиле С с классами, забить на std, и реализовывать те же векторы, ассоциативные таблицы собственными методами. Меня больше всего бесит когда, питуха называют очень простым ЯП, и рекомендуют новичкам(нулям), это товарищи лютый бред. Питуха надо изучать как минимум после изучения С++ в последних редакций.
Классы реализуются Да какая разница как реализуются, классы это просто структуры с методами, с простыми методами или виртуальными. Ну да, может и не плохо было встроить классы в сам движок Lua. Lua это интерпретатор максимально упрощенного Си, а питух это интерпретатор усложнённого С++ или похожего ЯП. Короче, не убедили. ПИТУХ == ГОВНО --> истина!!! Сообщение отредактировал NanoBot-AMK - 12.04.2019, 01:50 -------------------- СТАЛКЕР только для ПК!
|
 
|
|
12.04.2019, 01:38
Сообщение
#256
|
|
Почти Мастер Репутация: 75 Группа: Участник Сообщений: 1168 Награды: 4 Регистрация: 10.11.2015 |
для научных расчетов огромной точности, для построения и обучения нейронных сетей, для серверного и системного программирования и много еще чего. Звучит как бред, честно говоря. Это только доказывает его сложность. -------------------- СТАЛКЕР только для ПК!
|
 
|
|
12.04.2019, 02:29
Сообщение
#257
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
классы это просто структуры с методами, с простыми методами или виртуальными. Да причем тут реализация, я про удобство говорил. Синтаксический сахар нужен тогда, когда он упрощает жизнь разработчику и ускоряет время разработки. -------------------- |
 
|
|
12.04.2019, 02:32
Сообщение
#258
|
|
BFG9000 owner
Половина землекопа Репутация: 247 Группа: Припаркованный аккаунт Сообщений: 1813 Награды: 3 Регистрация: 30.03.2010 |
Меня больше всего бесит когда, питуха называют очень простым ЯП, и рекомендуют новичкам(нулям) Но ведь это действительно так. Когда обучаешь человека программированию - важно научить человека мыслить алгоритмически, декомпозиционно. Для этого нужно немного абстрагироваться от низкоуровневых вещей (на начальном этапе). Чтобы писать на С/С++ - нужно сначала разобраться в довольно низкоуровневых вещах - управление памятью, особенностях базовых типов (и особенностях реализации ООП если речь о С++). Для того чтобы начать программировать на Python - это можно опустить, и заняться непосредственно обучением - человек учится декомпозировать задачи на независимые части - функции, инкапсулировать общий набор свойств в сущности и реализовывать базовые алгоритмы и паттерны. Уже после этого можно (при желании / надобности) изучать особенности мемори менеджмента, выравнивания, соглашений вызовов, и прочие капризы разношерстных компиляторов. Звучит как бред, честно говоря. Это только доказывает его сложность. Очень странный вывод. PS. Дабы обрисовать контекст - у меня нет задачи убедить кого-либо в чем-либо, просто я заметил некоторые неверные выводы и постарался уточнить. Сообщение отредактировал iOrange - 12.04.2019, 02:34 -------------------- Hello worlds!
|
 
|
|
12.04.2019, 07:52
Сообщение
#259
|
|
Доктор Игровых Наук Репутация: 544 Группа: Участник Сообщений: 3657 Награды: 9 Регистрация: 12.07.2007 |
Питон замечательный язык и то что у него сделано железным правило с отступами вместо фигурных скобок, конец строки это конец инструкции и т.д. Это совершенно верное решение и оно же истинно легкое и заставляет придерживаться стилистике, этого лишены другие языки. Из за такого подхода любой чужой код становится удобночитаемый и именно из за этого этот ЯП так полюбился всем исследователям. Кроме того питон достаточно близок к С а его знают многие(пока у нас тут правил и правит паскаль на западе и европах дефакто С использовали и используют как вводный ЯП) а если этого мало то есть отличный ООП.
Касательно lua, это не самостоятельный ЯП, это в первую очередь встраиваемый язык и предполагается что необходимый функционал будет проброшен из ядра приложения в lua. Аналогично с js(node). Но последние годы появились безумные уники которые делают из этих метаязыков попытку прикрутить колеса и сделать их взрослыми самостоятельными ЯП. Плохо это? В своей идее использовать их как базис чего то мелкого они хороши и в общемто даже правильны. А вот самый лютый кошмар то что подавляющее количество не понимает что они идеальный для чего то мелкого и простого и начинают лепить монстров и пытаться использовать их полноценно и максимально из чего рождаются неповоротливые монстры(привет электрон). Отличие в том что в конечном счете если брать большую прогу то код на питоне останется все таким же легкочитаемым и быстрым, аналогичный софт на js\lua станет концом света в котором уже никто не разберется. Живой пример 2х сущностей на примере lua. |
 
|
|
12.04.2019, 11:37
Сообщение
#260
|
|
Почти Мастер Репутация: 75 Группа: Участник Сообщений: 1168 Награды: 4 Регистрация: 10.11.2015 |
В любом случае питух, как ЯП просто безполезный, т.к. интерпретатор, значит как и Lua подразумевает
в первую очередь встраиваемый язык А значит лучше его заменить на нормальные компилируемые ЯП, пусть даже на визуалвасик. Ещё меня очень не удобно использовать утилиты в виде исходников питуха, надо ещё оболочку устанавливать, а переделать код в С/С++ не могу, т.к. не умею читать синтаксис питуха. Хотя вроде есть как конверторы питух -> С++. вместо фигурных скобок Мне гораздо больше нравятся, end и } а необходимые отступы я и сам делаю. ЗЫ Если, всё таки, жизнь заставит им пользоваться, то пожалуй буду использовать так. Код def versioncheck(package, url, version, verbose=0): ok, newversion, fp = checkonly(package, url, version, verbose) if verbose > VERBOSE_NORMAL: return ok #end if ok < 0: print '%s: No correctly formatted current version file found'%(package) elif ok == 1: print '%s: up-to-date (version %s)'%(package, version) else: print '%s: version %s installed, version %s found:' % (package, version, newversion) if verbose > VERBOSE_SILENT: while true: line = fp.readline() if not line: break sys.stdout.write('\t'+line) #end #end #end return ok #end То есть использования псевдооператора #end для завершения блока, так привычней. Но тут надо переделать описания синтаксиса в Notepade++ чтобы реагировал на #end как на псевдооператор. <--Upd: необязательно! Осталось разобраться с for in это больше всего напрягает. Сообщение отредактировал NanoBot-AMK - 12.04.2019, 12:25 -------------------- СТАЛКЕР только для ПК!
|
 
|
|
Текстовая версия | Сейчас: 06.05.2024, 03:54 |