Четверг, 25 Апреля 2024, 18:55

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 2 из 5
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Форум игроделов » Записи участника » Remmintan [94]
Результаты поиска
RemmintanДата: Понедельник, 22 Июня 2015, 14:34 | Сообщение # 21 | Тема: Помощь с обучением
почетный гость
Сейчас нет на сайте
GarryHot, сам занимался разработкой лаунчеров и модов под майнкрафт пару лет, поэтому поделюсь своим опытом.
kol9mbo описал все правильно, изучать язык нужно с нуля. Просто "немного выучить ЯП" для конкретной задачи не получится. Без полноценного понимания принципов ООП и работы основных библиотек ты вряд ли что-то толковое сможешь написать.

Дисклеймер: Все ниженаписанное ИМХО, очевидно, что сейчас Java уже разрослась и используется во Фронт-энде, это лишь мое мнение.
Java создан преимущественно для Back-end'а (серверы, фреймвоки или если графика, то в основном на OpenGL). Единственное место где Java массово использует во Front-end'е это Android.
Сама библиотека Swing очень неудобна в плане разработки интерфейсов (более ужасной верстки я не встречал) поэтому реально годный лаунчер с красивой картинкой разработать будет не просто.
А что представляет из себя лаунчер? Это просто два поля для ввода логина и пароля и одна кнопка (возможно еще пара полей, загребающих информацию с сервера). Поэтому техническая часть простейшего лаунчера мала, картинка в нем играет большее значение (особенно для пользователя, которому плевать на то, что происходит на сервере). Поэтому советую посмотреть в сторону языка C#, язык крайне похож по синтаксису на Java поэтому, если ты начал изучть Java, пересесть на C# будет очень просто. А вот с интерфейсами на C# дела обстоят гораздо лучше чем в Java. Создание интерфейса простого лаунчера в VisualStudio Express (лучшая бесплатная IDE для C# на данный момент) будет сводиться к передвиганию картиночек по форме программы, а не написанию тонн кода верстки (как это происходит в Java). Если сложно писать на C# можно на C# разработать только интерфейс, а весь код описать на Java и потом с минимальной помощью Гугла портировать все в Visual Studio (Крайне идиотский способ, но все же).

Сам я в свое время, когда уже несколько лет писал на Java и захотел разработать лаунчер пересел на C# с легкостью его освоил за неделю (но я уже несколько лет писал) и создавал интерфейсы любой сложности без геммороя, чего и вам советую.


Сообщение отредактировал Remmintan - Понедельник, 22 Июня 2015, 14:34
RemmintanДата: Понедельник, 22 Июня 2015, 13:47 | Сообщение # 22 | Тема: Новичёк и Java.
почетный гость
Сейчас нет на сайте
Привет. Ошибок в твоем коде просто куча biggrin Сейчас со всем разберемся.

Для начала к главному. Ты немного неправильно понимаешь действие функции ArrayList.indexOf(String string); эта функция, как аргумент, принимает строку(!) ищет в ArrayList похожую строку и возвращает ее номер. Ты же берешь значение поля pole2 и превращаешь его в Integer (этого делать не надо, indexOf принимает String и ищет похожее значение, когда ты превращаешь строку в число, ты не только создаешь риск Exception'а, но и убиваешь значение строки).

Если более кратко, то вот этот код действия по нажатию на кнопку проверки:
Код
String strpole2=pole2.getText();      
Integer strpole2int =Integer.getInteger(strpole2);
metka2.setText("выбранное="+list.indexOf(strpole2int));

Надо заменить на этот:
Код
String strpole2=pole2.getText();      
metka2.setText("выбранное="+list.indexOf(strpole2));

Ибо ничего превращать в Integer не надо!
Про остальное добавлю, нужно отойти мне

Добавлено (22 июня 2015, 13:47)
---------------------------------------------
Далее, использование цикла каждый раз для подсчета количества элементов в Листе, это максимально неэффективно, да еще и к тому же дает неверный ответ.
Код
for (int i = 0;i<list.size() ; i++) {      
           metka.setText("Всего записано:"+i);}      
}

Этим куском кода ты каждый раз устанавливаешь i, в конечном счете, равное последнему индексу листа. Это неверно, потому что отсчет индексов листа идет от 0. Следовательно к твоей "длине" для достижения верного значения надо прибавлять единицу. Да и вообще этот метод кощунство, проще просто заменить весь кусок на
Код
metka.setText("Всего записано: "+list.size());

И еще один такой неэффективный метод выставления количества при удалении всего списка
Вот твой код:
Код
list.clear();      
metka.setText("Всего записано"+list.size());

Лично мне очевидно, что после удаления всего списка, количество записанных элементов стало равно 0. Следовательно, для повышения эффективности избавимся от вызова еще одного метода:
Код
list.clear();
metka.setText("Всего записано 0");


И последнее. Твоя проверка не работала, потому что она непонятно что делала.
У тебя было:
Код
System.out.println(list.get(0));

Ты выводил в стринговое значение 0 элеменета. Но оно и так известно потому что ты только что его записал.
Я полагаю, тебе нужно было это:
Код
System.out.println(list.indexOf("Значение изначально"));

На этом вроде все, скоро выложу весь исправленный код ан Pastebin. Удачи в обучении!


Сообщение отредактировал Remmintan - Понедельник, 22 Июня 2015, 13:53
RemmintanДата: Понедельник, 22 Июня 2015, 00:08 | Сообщение # 23 | Тема: Ctrl + V
почетный гость
Сейчас нет на сайте
Цитата
Яндекс браузер в Бэтке.


Сообщение отредактировал Remmintan - Понедельник, 22 Июня 2015, 00:08
RemmintanДата: Среда, 17 Июня 2015, 12:23 | Сообщение # 24 | Тема: Вопрос - Ответ (Java)
почетный гость
Сейчас нет на сайте
kol9mbo, не очень ясно... ты скопировал код Edison6? Потому что его код по ссылкам абсолютно рабочий. У тебя же не статичен метод main (на что, собственно и ругается компилятор). Ключевое слово static перед main'ом есть?

Добавлено (17 июня 2015, 12:23)
---------------------------------------------
Я просто скопировал код Edison'a и скомпилировал его в командной строке, все прекрасно работает:


Сообщение отредактировал Remmintan - Среда, 17 Июня 2015, 12:14
RemmintanДата: Воскресенье, 14 Июня 2015, 23:46 | Сообщение # 25 | Тема: [2D] Taiga Survival [Survival / RPG]
почетный гость
Сейчас нет на сайте
Цитата Kos94ok ()
Реализовав шрифты однажды, я больше не хочу этим заниматься )

Ох как я тебя понимаю. Для меня интерфейс самая гемморойная часть разработки.
RemmintanДата: Воскресенье, 14 Июня 2015, 23:05 | Сообщение # 26 | Тема: [2D] Taiga Survival [Survival / RPG]
почетный гость
Сейчас нет на сайте
И да. Забыл еще про доступ всех классов ко всем. Это гигантская дыра в безопасности с точки зрения читера (а игра вроде как будет онлайн равно или поздно). Ведь сделав хук памяти в одном классе из-за мелкого бага этого класса, у хакера будет возможность получить доступ абсолютно ко всем другим функциям игры (вплоть до полной замены пакетов клиента своими). Я понимаю, что безопасность не суть для маленькой инди игры, разработчик который не претендует на миллион продаж, но нужно же учится писать код правильно с самого начала, еще раз удачи в разработке.
RemmintanДата: Воскресенье, 14 Июня 2015, 22:59 | Сообщение # 27 | Тема: [2D] Taiga Survival [Survival / RPG]
почетный гость
Сейчас нет на сайте
Kos94ok, все классно написано, продолжай в том же духе.

Удивило полное разрушение инкапсуляции при написании движка (все классы имеют доступ ко всем), ты к этому пришел уже во второй версии движка или сразу так писал? Во времена всеобщей любви к шаблону MVC (хотя, согласен, использование его в играх крайне спорно) просто давать доступ всем и ко всему, это очень странное решение (Я понял, чем вызвано его использование, я не критикую, а просто комментирую). Могу предположить, что такая архитектура в будущем может сыграть злую шутку: если проект сильно разрастется, политика доступа всех классов ко всем затруднит вылавливание багов (а вдруг какой-то "левый" метод по ошибке программиста заносит нужное значение не в ту переменную и движок работает неверно, но это нельзя просто так отследить, потому что все классы имею доступ ко всем, и возможно, что "не та" переменная находится в совершенно неожиданном месте (надеюсь я хоть немного понятен)), выловить баги в такой атмосфере можно только пересборкой и перезапуском проекта каждый раз после пары десятков новых строк (тогда разработка сиииильно замедлится).

Про потоки: я тоже пришел к потокам не сразу, мне для этого пришлось два раза переписать движок biggrin .
И опять же такая архитектура затрудняет работу с потоками (хотя возможно в С++ с этим все нормально) просто в Java, например, для корректного использования одних и тех же кусков кода в двух разных потоках рекомендуется использовать синхронизованые методы или блоки кода (иначе могут возникать труодноотлваливаемые баги, которые проявляют себя не при каждом запуске программы).

И да, мне было бы интересно послушать подробнее про рендер (знаю, что были уже статьи про тени и порядок отрисовки) конкретнее: глобально про систему рендера и шрифты.

p.s. Я ни в коем случае не критикую. То, что сделал ты, это просто чума, мне до такого расти и расти, и ты однозначно по своим результатам лучший программист чем я (у тебя есть геймплей, у меня лишь куча тестов не производительность собственного кода). Я просто оборачиваюсь на свой опыт (программирую с раннего возраста вместо игры в компьютер, 4 года уж на Java пишу, развиваюсь медленно, ибо учеба) и делюсь своими мыслями по поводу выбранной архитектуры. Такая архитектура имеет полное право на существование. Работает? Значит все супер


Сообщение отредактировал Remmintan - Воскресенье, 14 Июня 2015, 22:59
RemmintanДата: Воскресенье, 14 Июня 2015, 14:36 | Сообщение # 28 | Тема: [2D] Taiga Survival [Survival / RPG]
почетный гость
Сейчас нет на сайте
Kos94ok, да я список писал от балды, чтобы дать понять, что мне будет интересно послушать обо всем. Ладно уж, я подожду поста про общую архитектуру, потом уже задам про свои мелочи, больно уж мои вопросы мелкие и технически тонкие (аля, как объекты двигаешь, непосредственно x, y координаты или для каждого матрицу модели преобразуешь (это вроде как эффективнее может быть, но при этом теряется контроль над коллизиями) ? (чушь в общем-то но мне интересно)). Если есть о чем писать, то лучше пиши сам, так будет рассказ складней и понятней для большинства.

Ordan, Да и вообще, если движок написан своими руками, то ты знаешь его вдоль и поперек, это очень сильно упрощает поиск и исправление багов.
RemmintanДата: Суббота, 13 Июня 2015, 22:35 | Сообщение # 29 | Тема: [2D] Taiga Survival [Survival / RPG]
почетный гость
Сейчас нет на сайте
Знаю, что не ко мне обращаешься, но все же.

Tymonr, так в фане и есть вся суть, извращенные конечно интересы, но для меня программирование веселей любой игры. Ну еще как вариант: "Мужик должен все уметь!" ©
RemmintanДата: Суббота, 13 Июня 2015, 22:09 | Сообщение # 30 | Тема: [2D] Taiga Survival [Survival / RPG]
почетный гость
Сейчас нет на сайте
Цитата Kos94ok ()
beril, Ну так не о чем рассказывать особо ) Работаю в соло, пытаюсь все сделать как можно лучше, так что идет довольно медленно. Если бы я рассказывал обо всех технических аспектах, то, судя по консольке, это не очень интересно будет народу )


Мне было бы очень интересно послушать про технические аспекты движка. Сам пару лет занимаюсь программированием графики под OpenGL, пытаюсь потихоньку разрабатывать 2D движок, и в процессе разработки возникает множество вопросов, ответы на которые очень сложно найти в русском сегменте гугла (а я не владею английским на том уровне, чтобы читать техническую литературу про OpenGL и оптимизацию кода). Мне интересны даже не столько синтаксис и конструкции языка, с кучей кусков кода (сам на Java в связке с GLSL пишу), сколько сама архитектура игры: как производишь отрисовку текста (атлас или рендер в текстуру, например), как анимацию производишь, используешь ли потоки для разделения рендера от логики игры, а логики игры от Input'а (в C++ вообще есть потоки?), как оптимизируешь, борешься с утечками памяти (утечки памяти для С++ вообще жуткая тема, в плюсах нет сборщика мусора biggrin ), коллизии как обрабатываешь, AI на чем строишь. Эти и подобные технические мелочи для меня очень интересны, и чем подробней рассказ будет, тем больше лучей добра я отправлю в твою сторону.

Я уверен, что мы с тобой не единственные на этом форуме, кто программирует графику на достаточно низком уровне (OpenGL для меня это вообще низ низом), и я не единственный, кому будет интересно послушать про архитектуру и твои решения типичных проблем (если даже единственный, может быть ты захочешь писать для единственного angel ).

И да, подобные отчеты будут уместны в этой теме, ведь это блог разработки. Программирование, это лютая часть разработки! И вообще, сайт gcup находится в категории "программирование" в рейтинге mail.

P.S. Прошу прощения за наглость, но если сам не знаешь с чего начать писать, я могу задать пару сотен вопросов.
P.S.S. про рендер теней и поиск пути посты были божественны, продолжай в том же духе.


Сообщение отредактировал Remmintan - Суббота, 13 Июня 2015, 22:30
RemmintanДата: Понедельник, 08 Июня 2015, 16:25 | Сообщение # 31 | Тема: Dungelot : Shattered Lands
почетный гость
Сейчас нет на сайте
Если не секрет, на каком движке игра? На готовом или самописном? Если самописном, то на чем пишете, какие библиотеки используете?
RemmintanДата: Понедельник, 16 Марта 2015, 18:00 | Сообщение # 32 | Тема: mr. President
почетный гость
Сейчас нет на сайте
Прошелся до конца кабинета, упал на колени и застрял под дверью. 10/10!!! biggrin

Как только я сумел доползти до оружия и взять его, игра стала в 100 раз веселей, каждый должен сыграть в нее.


Сообщение отредактировал Remmintan - Понедельник, 16 Марта 2015, 18:16
RemmintanДата: Суббота, 10 Января 2015, 21:44 | Сообщение # 33 | Тема: Работы в 3D
почетный гость
Сейчас нет на сайте
Цитата White9 ()
Remmintan, очень даже неплохо ) В чём рендеришь? )

Я особо заморачиваться не стал, моделю все в Блендере рендерю Cycles'ом (который встроен в Блендер)

p.s. Спасибо всем, кто поддержал smile


Сообщение отредактировал Remmintan - Суббота, 10 Января 2015, 21:47
RemmintanДата: Суббота, 10 Января 2015, 16:51 | Сообщение # 34 | Тема: [3D] One Car Game
почетный гость
Сейчас нет на сайте
Цитата 12334q ()
уважаемые, вы не в состоянии уменьшать качество картинки? не грузится нифега. идиотизм. за такое банить надо

Тут даже не в картинках дело, хостинг отстой. Так что заливайте, на нормальный хостинг, уважаемые. Вот отличный хостинг, картинки хранятся годами, ничего не лагает и не отваливается, легок в освоении и удобен, рекомендую!
RemmintanДата: Суббота, 10 Января 2015, 16:45 | Сообщение # 35 | Тема: Работы в 3D
почетный гость
Сейчас нет на сайте
RangForst, White9, спасибо за поддержку ребята! happy

Я тем временем пытался смоделить робота. Хотел закосить под стим панк, но к концу работы стиль пошел по наклонной, слегка переделал, получил некий космический зонд.
RemmintanДата: Пятница, 09 Января 2015, 21:52 | Сообщение # 36 | Тема: Arctic alive [завершено]
почетный гость
Сейчас нет на сайте
Отличная игра и атмосфера. Удачи с проектом!

Убила надпись "Окорок сжарился" на последнем видео, я думаю стоит заменить на "Окорок пожарился" happy
RemmintanДата: Четверг, 08 Января 2015, 18:28 | Сообщение # 37 | Тема: Работы в 3D
почетный гость
Сейчас нет на сайте
В результате трех дней знакомства с 3D попытался, что-то свое, слепить. Деталей маловато, но это все на что хватает моих способностей сейчас.




Конструктивная критика приветствуется. biggrin


Сообщение отредактировал Remmintan - Четверг, 08 Января 2015, 18:29
RemmintanДата: Вторник, 06 Января 2015, 23:05 | Сообщение # 38 | Тема: Стоимость модели
почетный гость
Сейчас нет на сайте
Цитата shizofren ()
Kzunec, http://www.3dmir.ru/s_tutor/tutor/452.html

Качество персонажа, что по ссылке несравнимо с качеством персонажа на картинке ТС. Персонажи, как по ссылке делались лет 15 назад.
RemmintanДата: Среда, 17 Сентября 2014, 17:09 | Сообщение # 39 | Тема: Разрабатываем Лаунчеры, Моды и плагины Minecraft
почетный гость
Сейчас нет на сайте
Команда опытных программистов MoJar предлагает Вашему вниманию свои услуги: мы разрабатываем плагины, моды и Лаунчеры любой сложности для Minecraft.

Цены низкие, работаем быстро, прислушиваемся к каждому Вашему пожеланию, сопровождаем обслуживание нашего ПО, качество - наше всё.
Подробности в нашей группе Вконтакте
RemmintanДата: Понедельник, 18 Августа 2014, 23:14 | Сообщение # 40 | Тема: Двойная или тройная буфферизация?
почетный гость
Сейчас нет на сайте
del

Сообщение отредактировал Remmintan - Понедельник, 18 Августа 2014, 23:16
Форум игроделов » Записи участника » Remmintan [94]
  • Страница 2 из 5
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Поиск:

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