Суббота, 27 Апреля 2024, 10:59

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 40
  • 1
  • 2
  • 3
  • 39
  • 40
  • »
Форум игроделов » Записи участника » Archido [783]
Результаты поиска
ArchidoДата: Суббота, 23 Июля 2016, 10:00 | Сообщение # 1 | Тема: Перевод экранных координат в мировые.
Сэнсэй
Сейчас нет на сайте
AlexsSyr
Для программиста крайне важно уметь пользоваться гуглом - это очень важный скилл, который экономит кучу времени (: Первая же сылка ведет на stackoverflow, откуда тов. Saitei любезно перевел и предоставил тут всю информацию. Почему бы и самому так не уметь? (: Там даже и код есть (:
Все таки форумы более полезны для обсуждения более конкретных деталей \ вопросов, что легко (или вообще) нагуглить не выйдет. Просто мои 5 копеек.

P.S. По глубине скажу, что ее можно взять (прочитать) из depth буфера \ текстуры, либо из полученных координат x,y без конечного z, строить луч по направлению камеры и искать пересечения со всеми объектами, выбирая при этом минимальное расстояние. Последний способ не нуждается во всяких Lock'ах текстур и вообще GAPI независим, но покодить надо будет малость побольше:) Такие дела.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Вторник, 24 Мая 2016, 12:38 | Сообщение # 2 | Тема: DirectX: преобразование координат (screen->world)
Сэнсэй
Сейчас нет на сайте
IG_Rich,
Цитата IG_Rich ()
но то-же не получается. Что вообще эта функция возвращает?Вектор из нашего экрана в точку куда кликнули(в мире),в мировых координатах?

Да, именно вектор в мировых координатах. Чтобы получить позицию, в которую нужно переместить камеру, требуется еще получить координату глубины(z) - считать пересечение луча с геометрией и искать ближайшую точку пересечения, либо прочитать ее напрямую из depth буфера.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Четверг, 20 Августа 2015, 17:29 | Сообщение # 3 | Тема: Распаковка данных zlib
Сэнсэй
Сейчас нет на сайте
Ну а как ты его тогда узнать то собираешься? Посмотри какие коды ошибок эта функция может возвращать... там есть такой, который говорит, что размер буфера недостаточен. Собственно, в большинстве случаев compression ratio не превышает 100%, поэтому просто берешь размер упакованного файла, помноженный на 2 и пытаешься распаковать. Если тебе говорят, что не влезает, то снова умножаешь на 2 и так пока не влезет.

C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Суббота, 08 Августа 2015, 21:01 | Сообщение # 4 | Тема: Вопрос-Ответ (C++)
Сэнсэй
Сейчас нет на сайте
Цитата Gudleifr ()
А фигня, которую Вы написали, остается фигней. По объективным причинам.

Не видать что-то нигде ни причин, ни объективности. Но ты пиши еще.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Суббота, 08 Августа 2015, 20:08 | Сообщение # 5 | Тема: Вопрос-Ответ (C++)
Сэнсэй
Сейчас нет на сайте
Цитата Gudleifr ()
К сожалению, это не решение.

А это всего лишь твое субъективное мнение. Я geralex'y на вопрос отвечал, не тебе. Думаю, он сам легко определит, что для него будет решением, а что - нет. То, что думаешь ты - никакой роли не играет.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Суббота, 08 Августа 2015, 19:09 | Сообщение # 6 | Тема: Вопрос-Ответ (C++)
Сэнсэй
Сейчас нет на сайте
Gudleifr
Ну и "компилируй" на здоровье. Я написал то решение, что проще для меня. Все остальное в руках автора вопроса.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Суббота, 08 Августа 2015, 18:43 | Сообщение # 7 | Тема: Вопрос-Ответ (C++)
Сэнсэй
Сейчас нет на сайте
Цитата geralex ()
Коллеги, подскажите может есть пример реализации проверки в приложении номера мобильного телефона?

Например, +7 код оператора 7-ый номер телефона

Регулярными выражениями проще и быстрее всего:

Код

include <regex>

...

std::regex regex("\\+7(\\d{3})(\\d{7})");
std::smatch results;

std::string expression = "+79091234567";
std::string rcode, rnumber;

if (std::regex_match(expression, results, regex)) //проверяем на соответствие
{
  auto iter = results.begin();
  rcode = *(++iter); //код оператора
  rnumber = *(++iter); //остаточный номер
}


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Понедельник, 03 Августа 2015, 04:42 | Сообщение # 8 | Тема: Выбор ЯП и движка
Сэнсэй
Сейчас нет на сайте
Цитата Saitei ()
В С++ остальное, например, заложено в самом стандарте (работа с файлами, потоки и т.п.).

Сказки. Переносимой поддержки юникода нет (здравствуй wchar_t из любимого стандарта), поэтому и работы с файлами тоже. А на стандарт надеются только очень наивные. Есть прецеденты в практике, когда вполне корректный код приводил к падению в глубинах std::map при попытке переноса этого кода на другую платформу(другой компилятор, другая реализация STL). Стандарты стандартами, но бОльшие части ОС специфики пишутся руками (или юзают буст:), правда который в свою очередь точно также написан "руками").

Цитата Saitei ()
Или С. Обычно многие уроки по компьютерной графики пишутся с упором на эти два языка.

Ну он то тут зачем? Его стихия это драйверы и микроконтроллеры. Остальные всего лишь пишут на С++ в стиле С.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Пятница, 15 Мая 2015, 05:57 | Сообщение # 9 | Тема: Как вы относитесь к лямбда-выражениям?
Сэнсэй
Сейчас нет на сайте
Большая часть этих "нововведений" прямиком (или идеей) переехала из буста:) Конечно стало поудобнее, но и раньше все это было вполне доступно:)

C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Пятница, 01 Мая 2015, 19:35 | Сообщение # 10 | Тема: Движение объекта после поворота в глобальных координатах.
Сэнсэй
Сейчас нет на сайте
А в чем конкретно проблема?

C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Вторник, 28 Апреля 2015, 17:57 | Сообщение # 11 | Тема: Вопрос-Ответ (C++)
Сэнсэй
Сейчас нет на сайте
Цитата gansterm ()
но как быть то auto_ptr копирует из вектора причем обнуляя его значение в нём.

Это только один из видов таких указателей, auto_ptr использует технику разрушающего копирования, поэтому объектом может владеть только один указатель. Тебе нужен shared и скорее всего weak для хранения. Вообще советую нормально ознакомиться с этой темой, что, как и в каких случаях используется... простым копированием примеров тут едва ли можно обойтись.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)

Сообщение отредактировал Archido - Среда, 29 Апреля 2015, 05:50
ArchidoДата: Вторник, 28 Апреля 2015, 10:19 | Сообщение # 12 | Тема: Вопрос-Ответ (C++)
Сэнсэй
Сейчас нет на сайте
Цитата gansterm ()
Как можно проверить что в указателе отсутствуют данные?

В указателе нет данных, в нем содержится только адрес области памяти, в которой уже и располагаются эти самые данные.
Штука в том, что когда удаляется какой-то объект, память, которую он ранее занимал, не удаляется в прямом смысле слова - она просто перестает принадлежать этому объекту и всем указателям, которые на этот объект\память указывали. Поэтому вот это:
Цитата
Добавил флаг kill на проверку перед удалением из вектора, а в памяти он весит. Так что обычной проверкой на флаг вроде как справился.
в корне не правильно.
В этой памяти может располагаться уже совсем другой объект, чем это плохо и чем это грозит нужно объяснять? Однажды там будет краш.

В чем проблема про умные указатели почитать? Они специально придуманы для управления временем жизни объекта, для вот таких вот ситуаций. Могу еще один вариант, конечно, посоветовать: можно хранить указатель на вектор в классе объекта, а позже в деструкторе удалять себя из этого вектора.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)

Сообщение отредактировал Archido - Вторник, 28 Апреля 2015, 10:20
ArchidoДата: Понедельник, 27 Апреля 2015, 18:48 | Сообщение # 13 | Тема: C# заменяет Java
Сэнсэй
Сейчас нет на сайте
Цитата KamiRonin ()
Unity5 использует IL2CPU для формирования релизов.. пиши и запускай себе.. ну если не слабо конечно!

Да ладно, прямо той самой космовской тулзой? А пруф будет?:)


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Понедельник, 27 Апреля 2015, 18:27 | Сообщение # 14 | Тема: C# заменяет Java
Сэнсэй
Сейчас нет на сайте
Цитата KamiRonin ()
есть разница - один раз транслируется программа и потом быстро запускается или КАЖДЫЙ РАЗ ЗАНОВО транслируется и потом - запускается!??

Ну есть разница, предкомпиленная программа стартовать будет быстрее, и? А при JIT компиляции после первых, относительно не быстрых секунд запуска большая часть нативного кода окажется в памяти... ну и далее разницы уже никакой.

И чего там про IL2CPU то? Слабо его выхлоп под виндой запустить?


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Понедельник, 27 Апреля 2015, 18:03 | Сообщение # 15 | Тема: C# заменяет Java
Сэнсэй
Сейчас нет на сайте
Цитата KamiRonin ()
ладно ладно.. если у тебя поисковики не пашут кину тебе ссылку..

Я все же надеялся, что это не та самая левая космовская тулза. А сам то использовал это чудо? И где?

Цитата KamiRonin ()
А вот если нужно нативное приложение работающее на уровне с++ и дальше - то там толка чуть больше чем дофига..

Нет там никаких "уровней С++", не выдумывай. Тот же выхлоп примерно в результате, что и JIT генерит, только предкомпиленный.

Цитата KamiRonin ()
мне важно что Я МОГУ делать на нем и с каким уровнем затрат

Ну лично я против такого подхода ничего не имею. Но фанатеть можно тихонько и про себя.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Понедельник, 27 Апреля 2015, 17:19 | Сообщение # 16 | Тема: Вопрос-Ответ (C++)
Сэнсэй
Сейчас нет на сайте
Стоит почитать про smart pointer'ы

C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Понедельник, 27 Апреля 2015, 17:14 | Сообщение # 17 | Тема: C# заменяет Java
Сэнсэй
Сейчас нет на сайте
Цитата KamiRonin ()
все сводится к пропагандистам джавы типа Vinchensoo - безаппеляционным и бездоказательным... и их крикам

Сказал другой, который еще Vinchensoo фору даст. Сплошное блаблабла.

Цитата KamiRonin ()
С# с его всепоглощающей многогранностью (от консоли, до форм, от крестиков ноликов - до игр, от снифферов -- до ОС)

Ах, ну просто поэзия. И отличный маркетинговый слоган, можно хоть прямо сейчас Майкрософту отправлять.

Цитата KamiRonin ()
после IL2CPU - учить джаву - это как покупать паровоз вместо магнитного монорельса

Что конкретно подразумевается под IL2CPU кстати? Какой-нибудь Ngen? Толку от него все равно не много.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Понедельник, 27 Апреля 2015, 06:08 | Сообщение # 18 | Тема: А зачем вообще нужен АСМ?
Сэнсэй
Сейчас нет на сайте
Gudleifr
О причинах? Я весь в внимании.

PATCH1
Затралил парня:)


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Воскресенье, 26 Апреля 2015, 18:44 | Сообщение # 19 | Тема: А зачем вообще нужен АСМ?
Сэнсэй
Сейчас нет на сайте
Gudleifr
Я не вижу там никаких противоречий. И нечего тут мусолить, все слишком очевидно: под конкретную задачу - конкретный инструмент. Всякие костыли оставим любителям извращений.

PATCH1
Параноики и любители костылей - это отдельная тема:) при нормальном раскладе главное понимать, что если приходится прибегать, скажем в шарпе, к unsafe указателям (бывают исключения конечно) и/или попыткам напрямую дергать даже байт код - то инструмент под задачу выбран явно не правильно.

HPlusDiese
Боже, какие вставки на асме? Уже давно интринсики были придуманы, под x64 в студии вообще асм вставки запрещены, по вполне очевидным причинам.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Воскресенье, 26 Апреля 2015, 17:53 | Сообщение # 20 | Тема: А зачем вообще нужен АСМ?
Сэнсэй
Сейчас нет на сайте
PATCH1
Процитировал мой пост спустя два года, неплохо:)
а чего тему то мусолить? На асме код сейчас совсем не пишут:) для микроконтроллеров, специфики вроде ПО для марсоходов, драйверов - есть си. Для крупных прикладных проектов с требованием к высокой производительности (игровые движки, например) - есть плюсы. Все, что работает поверх сейчас пишется на шарпе, джаве, етс. Всему свое место как говорится.

Цитата
Некоторые программисты говорят, что ASM – это недоразумение, а не ЯП

А некоторые программисты считают программистов, которые так говорят - большим недоразумением:)


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
Форум игроделов » Записи участника » Archido [783]
  • Страница 1 из 40
  • 1
  • 2
  • 3
  • 39
  • 40
  • »
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг