Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 09.04.2018, 22:32   #21
alexzk
Участник клуба
 
Регистрация: 12.04.2017
Сообщений: 889
Репутация: 172
По умолчанию

Глючная ваша юнити по самое не могу. Со стима 1 из 10 игр ваще запускается на линуксе, и таки то вылетает, то комп вешает.

Лучче всего UE игры идут.
alexzk вне форума   Ответить с цитированием
Старый 09.04.2018, 22:37   #22
hroniki
Новичок
 
Регистрация: 09.04.2018
Сообщений: 23
Репутация: 10
По умолчанию

Подойду с другой стороны, вот код


Код:

#include <SFML/Graphics.hpp>
#include <iostream>
// подключение библиотеки

sf::RenderWindow window;
sf::CircleShape shape(50, 30);
sf::RectangleShape rectangle(sf::Vector2f(150, 50));

sf::Image image111;
sf::Texture texture111;
sf::Sprite sprite111;

float speed = 0.1;

float CurrentFrame = 0;



int main() 
{
	
		window.create(sf::VideoMode(640, 480), "Test");	
		window.setFramerateLimit(60);

	// круг
	shape.setPosition(100, 100);
	shape.setFillColor(sf::Color::Green); 
	shape.setOutlineColor(sf::Color::White);
	shape.setOutlineThickness(10);

	// прямоугольник
	rectangle.setFillColor(sf::Color::Blue);
	rectangle.setPosition(300, 300);

	// загружаем картинку
	image111.loadFromFile("image111.png");
	texture111.loadFromImage(image111);
	sprite111.setTexture(texture111);
	sprite111.setPosition(50, 50);
	sprite111.setTextureRect(sf::IntRect(0, 0, 64, 96));

	sf::Clock clock;
	



	while (window.isOpen()) 
	// пока выполняется действие окно открыто?
	{

		float time = clock.getElapsedTime().asMicroseconds();
		clock.restart();
		time = time / 800;
		std::cout << time << std::endl;

		if (sf::Keyboard::isKeyPressed(sf::Keyboard::Left))
		{
			CurrentFrame += 0.005*time;
			std::cout << CurrentFrame << std::endl;
			if (CurrentFrame > 4) CurrentFrame -= 4;
			sprite111.setTextureRect(sf::IntRect(int(CurrentFrame) * 64, 96, 64, 96));
			sprite111.move(-speed*time, 0);
		}

		if (sf::Keyboard::isKeyPressed(sf::Keyboard::Right))
		{
			CurrentFrame += 0.005*time;
			std::cout << CurrentFrame << std::endl;
			if (CurrentFrame > 4) CurrentFrame -= 4;
			sprite111.setTextureRect(sf::IntRect(int(CurrentFrame) * 64, 192, 64, 96));
			sprite111.move(speed*time, 0);
		}

		if (sf::Keyboard::isKeyPressed(sf::Keyboard::Up))
		{
			CurrentFrame += 0.005*time;
			std::cout << CurrentFrame << std::endl;
			if (CurrentFrame > 4) CurrentFrame -= 4;
			sprite111.setTextureRect(sf::IntRect(int(CurrentFrame) * 64, 288, 64, 96));
			sprite111.move(0, -speed*time);
		}

		if (sf::Keyboard::isKeyPressed(sf::Keyboard::Down))
		{
			CurrentFrame += 0.005*time;
			std::cout << CurrentFrame << std::endl;
			if (CurrentFrame > 4) CurrentFrame -= 4;
			sprite111.setTextureRect(sf::IntRect(int(CurrentFrame) * 64, 0, 64, 96));
			sprite111.move(0, speed*time);
		}

	

		sf::Event event;
		// событие

		while (window.pollEvent(event)) 
		// виндоус запрашивает события(которые мы создали, это иимя)
		
		{

			if (event.type == sf::Event::Closed)
				// пока тип нашего события (крестик) - то оно закрывается

				window.close();
		}

		
		

		window.clear();
		window.draw(shape);
		window.draw(rectangle);

		window.draw(sprite111);

		window.display();

		
	}

	return 0;
}

Извините, не знаю как добавлять под спойлер...что мне нужно туда написать, чтобы когда я нажал пробел мой спрайт персонажа как бы прыгнул по параболической траектории...или начал по ней прыгать много раз и улетел за экран?! Очень сильная локализация проблемы и конкретно всё....незачем мне изучать кучу библиотек и тройные интегралы для её решения, я точно уверен, я знаю уравнение параболы, но я не знаю, как попросить машину сделать мне то, что я хочу.
hroniki вне форума   Ответить с цитированием
Старый 09.04.2018, 22:37   #23
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 16,472
Репутация: 3242

icq: 512-765
skype: alexp.frl
По умолчанию

Цитата:
Сообщение от alexzk Посмотреть сообщение
Глючная ваша юнити по самое не могу. Со стима 1 из 10 игр ваще запускается на линуксе, и таки то вылетает, то комп вешает.
Так наверно никто просто не тестирует на линуксе )
Ну и во многих негативных отзывах о Юнити виноват именно низкий порог входа — все подряд делают игры на нем, естественно не все качественно.

https://www.youtube.com/watch?v=bBFZ1KR8oVE
Alex11223 вне форума   Ответить с цитированием
Старый 09.04.2018, 22:40   #24
alexzk
Участник клуба
 
Регистрация: 12.04.2017
Сообщений: 889
Репутация: 172
По умолчанию

Цитата:
...у меня машина не едит, скажите, какую гайку повернуть, чтоб она поехала, причем раза в 2 быстрее, чем было
Вот примерно это вы и спросили.

Код:

if (sf::Keyboard::isKeyPressed(sf::Key board::Down))
{
CurrentFrame += 0.005*time;
std::cout << CurrentFrame << std::endl;
if (CurrentFrame > 4) CurrentFrame -= 4;
sprite111.setTextureRect(sf::IntRec t(int(CurrentFrame) * 64, 0, 64, 96));
sprite111.move(0, speed*time);
}

Вот реакция на стрелку вниз - делайте по аналогии на пробел (но все равно не поедит - 201%).
alexzk вне форума   Ответить с цитированием
Старый 09.04.2018, 22:45   #25
hroniki
Новичок
 
Регистрация: 09.04.2018
Сообщений: 23
Репутация: 10
По умолчанию

Цитата:
Сообщение от alexzk Посмотреть сообщение
Вот примерно это вы и спросили.

Код:

if (sf::Keyboard::isKeyPressed(sf::Key board::Down))
{
CurrentFrame += 0.005*time;
std::cout << CurrentFrame << std::endl;
if (CurrentFrame > 4) CurrentFrame -= 4;
sprite111.setTextureRect(sf::IntRec t(int(CurrentFrame) * 64, 0, 64, 96));
sprite111.move(0, speed*time);
}

Вот реакция на стрелку вниз - делайте по аналогии на пробел (но все равно не поедит - 201%).

Отличный совет, у меня сейчас пукан на орбиту улетит просто!!! Вот вы бы могли посоветовать как вбить туда 2 строчки кода и всё!!! или даже 20 - но это решаемо и это бы очень помогло, так как если знаете - для вас это раз плюнуть.

Для решения проблемы нужно её решать, полезно сделать змейку или калькулятор, но вряд ли мне это поможет хоть как то.

Ещё посоветуйте 30 лет смотреть на восход и закат и медитировать, стоя на трости в долине драконов на траве, взращённой на экскрементах этих же драконов.

Последний раз редактировалось hroniki; 09.04.2018 в 22:48.
hroniki вне форума   Ответить с цитированием
Старый 09.04.2018, 22:48   #26
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 16,472
Репутация: 3242

icq: 512-765
skype: alexp.frl
По умолчанию

Цитата:
Сообщение от hroniki Посмотреть сообщение
while (window.isOpen()) // пока выполняется действие окно открыто?
наоборот.

Цитата:
Сообщение от hroniki Посмотреть сообщение
прыгнул по параболической траектории
Наверно считать и подставлять соответствующие координаты в move.
Ну и это не 1 фрейм видимо будет происходить, так что например добавить какой-нибудь флаг (bool isJumping) и/или переменные с прогрессом прыжка и сдвигать по этой траектории какое-то время.
Alex11223 вне форума   Ответить с цитированием
Старый 09.04.2018, 22:51   #27
Stanislav
Квадрокоптерист
Профессионал
 
Регистрация: 29.09.2007
Сообщений: 1,800
Репутация: 532
По умолчанию

Цитата:
Сообщение от alexzk Посмотреть сообщение
Глючная ваша юнити по самое не могу. Со стима 1 из 10 игр ваще запускается на линуксе, и таки то вылетает, то комп вешает.

Лучче всего UE игры идут.
Не хочу никого обидеть но это не юнити наша глючная а ручки у кого то кривоваты. не надо пинять на инструмент коли "рожа" крива. это я к тому что в руках дикаря техника кусок метала. я писал на юнити и у меня только позитивные эмоции. а знаете ли всякие мелкие баги и косячки можно любому движку привесить
__________________
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума   Ответить с цитированием
Старый 09.04.2018, 22:52   #28
alexzk
Участник клуба
 
Регистрация: 12.04.2017
Сообщений: 889
Репутация: 172
По умолчанию

Цитата:
Проблемы индейцев шерифа не е...волнуют.
Вы же помните эту пословицу? Вам честно объяснили - нужны годы. Ну для параболы хватило бы 2-3 мес. - и как-то бы прыгала, с переодическими вылетами игры.
Тут ничего не изменить - это биология мозга. Так долго он учится. Причем любому делу.
У нас других ответов нет. Все что знали - сказали.
alexzk вне форума   Ответить с цитированием
Старый 09.04.2018, 22:53   #29
hroniki
Новичок
 
Регистрация: 09.04.2018
Сообщений: 23
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
наоборот.


Наверно считать и подставлять соответствующие координаты в move.
Ну и это не 1 фрейм видимо будет происходить, так что например добавить какой-нибудь флаг (bool isJumping) и/или переменные с прогрессом прыжка и сдвигать по этой траектории какое-то время.

А не могли бы вы написать, как это выглядит в коде, пожалуйста.
Изображения
Тип файла: jpg 2ys8z8.jpg (42.0 Кб, 9 просмотров)
hroniki вне форума   Ответить с цитированием
Старый 09.04.2018, 22:53   #30
alexzk
Участник клуба
 
Регистрация: 12.04.2017
Сообщений: 889
Репутация: 172
По умолчанию

Цитата:
Сообщение от Stanislav Посмотреть сообщение
Не хочу никого обидеть но это не юнити наша глючная а ручки у кого то кривоваты. не надо пинять на инструмент коли "рожа" крива. это я к тому что в руках дикаря техника кусок метала. я писал на юнити и у меня только позитивные эмоции. а знаете ли всякие мелкие баги и косячки можно любому движку привесить
А я причем? Я купил игру - и запускаю )) И говорю результаты экспериментов. Более 50 игр на юнити в библиотеке - поигралось 4-5, 1-2 хорошо, остальные взбесили.
Игры на UE все играют от и до.
alexzk вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Раскрывающаяся навигация прыгает Bulat Ibrahim JavaScript, Ajax 2 17.08.2017 21:26
Анимированый персонаж Microsof Agent 2.0 casio23 Общие вопросы Delphi 3 15.01.2012 00:37
Анимированый персонаж casio23 Общие вопросы Delphi 0 13.11.2011 15:20
Delphi OpenGL: анимированный персонаж *.GMS (3D Studio Max) Vova777 Общие вопросы Delphi 0 05.08.2011 19:42
Программа после выхода из функции прыгает на другую строчку. zipwind C++ Builder 1 09.05.2011 18:46


06:19.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru