Результаты поиска
| |
Rean | Дата: Воскресенье, 16 Декабря 2012, 16:58 | Сообщение # 221 | Тема: Помогите с кодом HTML |
участник
Сейчас нет на сайте
| DimOk, попробуй
Ах да, еще атрибут frame есть. Но я не помню какие там значения.
Сообщение отредактировал Rean - Воскресенье, 16 Декабря 2012, 17:00 |
|
| |
Rean | Дата: Воскресенье, 16 Декабря 2012, 16:50 | Сообщение # 222 | Тема: Задание в инст =)) |
участник
Сейчас нет на сайте
| KPECT, Quote (KPECT) простого и в тоже время эффектного Шашки? Логика реализуется довольно просто и быстро - поэтому все внимание можно уделить сетевой части (которая тоже в свою очередь получится очень простой) и визуальной составляющей.
|
|
| |
Rean | Дата: Суббота, 15 Декабря 2012, 16:15 | Сообщение # 223 | Тема: C# и что учить до него |
участник
Сейчас нет на сайте
| Интересно... Никогда не думал, что можно программирование изучать по видеороликам. Если кто имел опыт - отпишитесь, как оно? Удобней/понятней/наглядней, чем читать?
|
|
| |
Rean | Дата: Суббота, 15 Декабря 2012, 11:12 | Сообщение # 224 | Тема: C# и что учить до него |
участник
Сейчас нет на сайте
| Slavker, Quote (Slavker) дальше циклов понять не удалось. А что именно вызвало сложность? Условные конструкции?
Quote (Slavker) Что можно учить попроще чтобы было легче изучать C# Не буду оригинальным, если скажу, что лучше начать с чистого C (хотя, работа с памятью на начальных порах в C# тебе не понадобится). Главное понять управляющие конструкции (циклы, условные операторы и прочее).
Quote (Slavker) Библию очень сильно критикуют на торрентах, как на рутрекере так и на nnm-club. Видимо, знатные специалисты. Вообще, то что я видел из работ Фленова - достаточно просто и доступно. Если осилишь его, то можешь с уверенностью считать, что сделал первый шаг к пониманию.
Я начинал в 2000-м году с каких-то статеек по BASIC и DELPHI, где основной задачей было - перепечатать листинг программы, прочитать краткое описание того, что перепечатал, а все остальное время методом научного тыка исправлять ошибки, допущенные автором, и свои опечатки.
|
|
| |
Rean | Дата: Пятница, 14 Декабря 2012, 22:01 | Сообщение # 225 | Тема: Basic vs Pascal |
участник
Сейчас нет на сайте
| First, Quote (First) да никто про себя так не скажет, в принципе От чего же? Я себя назову профессионалом. Вы, видимо, путаете с "гуру" или кем-то подобным. А профессионал какого-либо дела - это человек, для которого данное дело является профессией. Иными словами, с помощью этого он зарабатывает на жизнь.
Quote (First) он сам был не доволен этим языком А вот и корень зла. Все по Фрейду. Теперь ваша привязанность и позиция ясна.
Quote (First) Он мне помог понять логику и суть программирования А это ключевая фраза. Перед ней можно поставить предложение вида: "Я начал изучать программирование с %programming_language%. Он мне помог понять логику и суть программирования."
Quote (First) Пригодится! Сейчас в большинство универах (особенно на Украине) начинают учить программирование именно с VB. Чтож, не очень завидное положение. VB, грубо говоря, это не основы. Это что-то среднее. Здесь уже и ООП, и событийное программирование - для человека мало знакомого с программированием это настоящая головная боль (особенно, если вспомнить как многие мои одногруппники пытались переварить основные принципы объектно-ориентированной парадигмы). В любом случае, на факультете вычислительной техники придется учить C++. Так не проще ли начать с довольно доступного C#? А вообще я исключительно за чистый C для начала. Ну или Pascal'я с Basic'ом.
И наконец, я в который раз говорю - не имеет значение с чего человек начинает постигать программирование: basic, pascal, кумир, ада и прочее. Да, возможно где-то синт. сахара больше, где-то не так сладко - главное, чтобы человек понял как работать с машиной, научился понимать ее. Научился "правильно подбирать выражения", ведь программирование тем и отличается от кодерства, что сначала надо придумать алгоритм понятный для машины. А если человек разобрался хоть в каком-то языке - составить более-менее внятный алгоритм будет не так уж трудно. А там уже не имеет значение на чем писать, если нет определенных требований.
Сообщение отредактировал Rean - Пятница, 14 Декабря 2012, 22:03 |
|
| |
Rean | Дата: Четверг, 13 Декабря 2012, 23:03 | Сообщение # 226 | Тема: Basic vs Pascal |
участник
Сейчас нет на сайте
| -Mikle-, Quote (-Mikle-) Rean, бейсик сейчас гораздо более распространён, чем ты думаешь. В корне не согласен.
И дело даже не в количестве диалектов (кстати, сомневаюсь, что большое количество диалектов языка - это успех, скорее напротив - никак не могут найти золотую середину). Далее у вас идет исключительно личное мнение, уж простите, но не подкрепленное фактами. Я серьезно. Это ведь сугубо ваше мнение, что Turbo Pascal лучше Turbo Basic'a, а Quick Basic лучше первого. И все в том же духе. Вы не подумайте, я не пытаюсь как-то оскорбить, принизить или сказать, что ваше мнение ничто.
Просто, если оперировать фактами и смотреть правде в глаза: успех VB во многом благодаря Microsoft, а именно маркетинговой политике. Почему? Да потому что это - Microsoft, и мы видим как она работает. Нет, я не имею ввиду, что они продают "отходы" в блестящей обвертке. Но при равных условиях конкурирующего товара, они все-таки выходят вперед (не знаю, может людям в Windows что-то подмешивают). К тому же, интересный факт (примерно как тот, что "про университеты") - Microsoft, имея собственный неплохой язык, всё-же, делает ставку на симбиоз Delphi и C++. А это уже должно сказать о многом.
И когда мы начинаем наблюдать тенденции, а не просто рассуждать на тему строгой-нестрогой типизации, точки запятой в конце строки (а python так вообще звиздец со своими отступами ;)) и прочее, прочее, прочее - сразу все становится на свои места. Я не защищаю Pascal, хотя с ним у меня связано немного больше времени, чем с Basic. Каждый язык занял свое место: один пошел на слияния в угоду создания чего-то нового, а другой стал популярным скриптовомакросным языком MS Office'а, AutoCAD'а и прочего.
Но не стоит говорить, что хоть один из этих языков сейчас хоть что-то отдельно из себя представляет. Я к тому, что люди говорят: "Учи Basic, мол, он тебе в дальнейшем пригодится!". Не пригодится. Также как и Pascal. Отдельно, сам по себе - нет. Как точка старта - возможно.
P.S. Quote но никогда паскалеподобный. Это слиииишком категорично. У нас разве нет движков на Delphi/Object Pascal? Нет паскалеподобного-самого-мега-популярного-среди-начинающих GML??? Вы меня расстраиваете.
First, Quote (First) О Господи Я не буду писать контраргументы, ведь очень долго и бестолку Молодой человек, вы хотя бы сначала наберитесь профессионального опыта, чтобы "огосподничать". Если вам нечего сказать, и вы пишите об это в общественном месте - это не показатель большого ума.
Quote (First) VB удобный, популярный, хороший язык программирования Да никто у вас его не забирает. Хватит читать между строк. С вами, First, разговор окончен не начавшись. Теперь я понимаю, что значит
Quote «Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации»
|
|
| |
Rean | Дата: Среда, 12 Декабря 2012, 23:45 | Сообщение # 227 | Тема: Basic vs Pascal |
участник
Сейчас нет на сайте
| First, а толку? Какое практическое применение? Я не утверждаю, что Pascal лучше/удобней/быстрее/и прочее, но если где-то требуется VB, то скорее всего это: как вариант разработки под .NET, либо поддержка ранее разработанной системы, либо решение школьных/университетских задач. Если и встречаются иные случаи - это исключение из правил. Это из личного опыта.
Вообще, глубоко плевать, что выбрать: разберешься в одном - разберешься и в другом. А там уже можно определиться, что больше нравится.
Интересный факт: ни разу не слышал, чтобы в университетах изучали какой-либо Basic. В нашем был либо C, либо Delphi (Object Pascal). Хотя последнее сейчас уже практически отошло в сторону - его место занял C#. Аналогично и в другом ВУЗе.
|
|
| |
Rean | Дата: Вторник, 11 Декабря 2012, 07:44 | Сообщение # 228 | Тема: Basic vs Pascal |
участник
Сейчас нет на сайте
| Quote Я видел достаточно вакансий на программиста VB По большей части это лишь связано с платформой .NET.
|
|
| |
Rean | Дата: Воскресенье, 09 Декабря 2012, 10:42 | Сообщение # 229 | Тема: [HGE] Камера |
участник
Сейчас нет на сайте
| Quote (sooqua) А нет все сик) Поигрался с "настройками", код менять не пришлось Вся суть в том, что "менять" там практически нечего. Единственное, что можно сделать - "поиграть" с параметрами функций. Основная задача была: реализовать плавное движение камеры. Остальное - побрякушки, которые делаются еще проще.
Всегда пожалуйста! )
|
|
| |
Rean | Дата: Воскресенье, 09 Декабря 2012, 00:25 | Сообщение # 230 | Тема: [HGE] Камера |
участник
Сейчас нет на сайте
| Quote (sooqua) Блин.. Не выходит ничего. Значит плохо старался!
Делать будем так:
Создаю структуру, которая будет отвечать за объект "Камера": Code struct Camera { // Координаты камеры float X; float Y; // Функция интерполяции float hLerp(float value, float amount) { return X + (value - X) * amount; } }; Camera camera;
Функция hLerp - в нашем случае, это функция линейной интерполяции по горизонтали. X - это value1. value - это соответственно value2. amout - он и есть amount
Далее, для наглядности опишем еще одну структуру - GameObject Code struct GameObject { // Координаты объекта float X; float Y; // Спрайт объекта hgeSprite *sprite; }; GameObject obj; Здесь, думаю, все ясно.
А теперь, "финт ушами": в функции, которая отвечает у нас за просчет кадра (HGE_FRAMEFUNC), следует ввести следующее: Code bool FrameFunc() { // Выход из программы if (hge->Input_GetKeyState(HGEK_ESCAPE)) return true; // Передвижение объекта по оси Х с учетом дельта-времени (к нашему делу мало относится) if (hge->Input_GetKeyState(HGEK_LEFT)) obj.X -= 500 * hge->Timer_GetDelta(); if (hge->Input_GetKeyState(HGEK_RIGHT)) obj.X += 500 * hge->Timer_GetDelta();
// Король Вечеринки - Линейная Интерполяция! camera.X = camera.hLerp(obj.X-100, hge->Timer_GetDelta() * 2);
return false; } Основной смысл несет предпоследняя строчка. Здесь мы указываем, что интерполировать надо по координате X нашего игрового объекта (100 я отнимаю лишь для того, чтобы объект не был с самого края окна - костыль). Стоит обратить внимание на то, что в позицию параметра amount мы вставили GetDelta. По той простой причине, что интерполяция у нас должна происходить как бы в действии, чтобы мы могли наблюдать эффект "наплыва" камеры. Умножение на 2 - чтобы интерполяция происходила чуть быстрее.
Ну и в завершении: Code bool RenderFunc() { // Применяем трансформацию с заданными параметрами. hge->Gfx_SetTransform(0, 0, -camera.X, camera.Y, 0, 1, 1); // Выполняем отрисовку hge->Gfx_BeginScene(); hge->Gfx_Clear(0xFFFFFF); obj.sprite->Render(obj.X, obj.Y); hge->Gfx_EndScene(); // TODO: отрисовать HUD // для этого "скидываем" трансформацию по нулями и рисуем то, что надо. return false; } Теперь это не должно вызвать каких-либо трудностей.
|
|
| |
Rean | Дата: Суббота, 08 Декабря 2012, 12:55 | Сообщение # 231 | Тема: [HGE] Камера |
участник
Сейчас нет на сайте
| Quote (sooqua) Можно примерчик с пояснениями? Тебе подойдет реализация линейной интерполяции из Microsoft XNA:
Code value1 + (value2 - value1) * amount
value1 - это будет X. value2 - это будет X1. amount - вес точки X1. Значение должно находится в [0;1].
Если мне не изменяет память, то amount будет влиять на резкость-плавность движения. Задача из простых: реализуешь данный алгоритм в виде функции. Если у тебя камера "привязана" к объекту, то каждый такт процессора изменяешь значение X камеры, интерполируя текущую координату X и координату X объекта.
|
|
| |
Rean | Дата: Суббота, 08 Декабря 2012, 12:24 | Сообщение # 232 | Тема: [HGE] Камера |
участник
Сейчас нет на сайте
| Quote Но она слишком резкая)) Интерполяция по точкам? Не помню, есть ли она в HGE, но реализуется она достаточно просто.
Правка: интерполяция координат камеры позволит перемещать ее плавно. Допустим, необходимо переместить камеру по горизонтали. Тогда, следует взять текущую координату Х и конечную Х1. В результате интерполяции получаем новое значение Х и повторяем операцию до тех пор, пока Х не станет Х1.
Сообщение отредактировал Rean - Суббота, 08 Декабря 2012, 12:31 |
|
| |
Rean | Дата: Пятница, 07 Декабря 2012, 21:17 | Сообщение # 233 | Тема: Помогите дописать игру :3 |
участник
Сейчас нет на сайте
| Quote Костыльно, но работает) Тему можно клоуз)) Ну уж нет! Описывай как сделал - алгоритм и примеры кода приветствуются! А иначе зачем создавал тему? Вдруг у кого-нибудь такой же вопрос будет - помогайте друг другу.
|
|
| |
Rean | Дата: Пятница, 07 Декабря 2012, 19:10 | Сообщение # 234 | Тема: Помогите дописать игру :3 |
участник
Сейчас нет на сайте
| То есть??? Автор осилил генерацию карты, парс строки, перемещение спрайта и вывод через HGE, но не смог сделать элементарную коллизию? А там, откуда вы код копировали, коллизии не было?
О чем нам должно сказать описание класса MapBuilder?
Декабрь подсказывает мне, что началась пора сдачи курсовых...
Сообщение отредактировал Rean - Пятница, 07 Декабря 2012, 19:13 |
|
| |
Rean | Дата: Суббота, 29 Сентября 2012, 01:09 | Сообщение # 235 | Тема: Как возвести число в степень. |
участник
Сейчас нет на сайте
| Maxaon, а алгоритм действительно кривой. Причем это очевидно. MrAkakuy, конечно, не прав, но ошибка следующая:
При x = 3, p = 2 При таком раскладе будет выполнено три итерации (а = 2, а = 1, а = 0). Что имеем в результате? Code Первый проход. x = 3 * 3 = 9 Второй проход. x = 9 * 3 = 27 Третий проход. x = 27 * 3 = 81
В итоге получаем, что 3 во 2 степени у нас равно 81.
И вообще, зачем все так усложнять, можно было ведь проще сделать: Code s = 1; for (i = 0; i < p; i += 1) s = s * x; return s;
|
|
| |
Rean | Дата: Суббота, 08 Сентября 2012, 22:36 | Сообщение # 236 | Тема: Игродел |
участник
Сейчас нет на сайте
| Quote (Qvant) В точку , после этого кода вообще ничего работать не будит , а никто это не замечает Так а зачем столько лишних движений? Не проще было бы использовать так?
А если уж ты хотел запутать, то можно было бы что-то вроде этого: Code int *p = new int(10); while (p) { *p--; }
|
|
| |
Rean | Дата: Суббота, 08 Сентября 2012, 09:45 | Сообщение # 237 | Тема: NeoAxis Engine |
участник
Сейчас нет на сайте
| А NeoAxis уже перешел в раздел конструкторов? Что-то я давно уже не следил за ним.
|
|
| |
Rean | Дата: Пятница, 31 Августа 2012, 16:35 | Сообщение # 238 | Тема: Странность с переменной |
участник
Сейчас нет на сайте
| Чудеса )
|
|
| |
Rean | Дата: Пятница, 31 Августа 2012, 15:50 | Сообщение # 239 | Тема: Странность с переменной |
участник
Сейчас нет на сайте
| Такие проблемы бывают, если объявлены переменные с разными уровнями доступа. Поэтому, когда происходит попытка получить данные из переменной, которая объявлена в другой области - результат может быть непредсказуемым.
Quote хотя я просто скопировал код масивов в другой обьект(с аналогичным названием) Здесь подробней. В первом объекте работа с массивами выполняется корректно? У первого и второго объекта одинаковые имена?
|
|
| |
Rean | Дата: Пятница, 31 Августа 2012, 13:09 | Сообщение # 240 | Тема: Странность с переменной |
участник
Сейчас нет на сайте
| Приведенных в первом посте данных не достаточно, чтобы обнаружить ошибку. Проблема может быть в областях видимости, в неправильном присвоении где-нибудь ранее. Вплоть до опечатке. Уверены, что отрисовка спрайтов не происходит раньше, чем заполнение массива?
|
|
| |
|