fle game engine - движок для создания игр
fle game engine - движок для создания игр


Balls and holes PC game / Balls and Holes PC игра
Вакансии
Игродельня
Today
19 ноября 2017
5:57
Вход Регистрация Забыли пароль ?

сайт megainformatic - СССР - Создаем Сайт Своими Руками - Экспорт/импорт данных из баз данных MySQL
              Продолжаем
подробнее...

Теги

создание сайтов, создание игр, дизайн, игры, информатика, уроки photshop, php, c++, музыка, delphi, cms, робосайт

Статьи сайта

megainformatic - Программируем на C++ с использованием MFC

megainformatic - Программируем на C++ с использованием MFC - Создание MFC приложения

megainformatic - Программируем на C++ с использованием MFC - Создание MFC приложения - hello, world !

megainformatic - Как создать игру ? - Пишем игровой движок с нуля

megainformatic - Как создать игру ? - Пишем игровой движок с нуля - Вступление

megainformatic - Как создать игру ? - Пишем игровой движок с нуля - Общая структура будущего игрового движка

Разное

megainformatic - Как создать игру ? - Пишем игровой движок с нуля - DXUTMainLoop - цикл работы DirectX-приложения

megainformatic - Варианты макетов Психолог 911

megainformatic - Шаблоны для сайтов - что это и какие они бывают ?

megainformatic - Ива Ден энд КуХа - КОДЕКС ФРИЛАНСЕРА - Глава 3 - Кто он ? (who is ?)

megainformatic - Мои Музыкальные Миры - готовая музыка mp3 - новинки 2013 года

megainformatic - Теория и практика хакерских атак - самозащита от нападения

megainformatic - Теория и практика хакерских атак - самозащита от нападения - Способы подмены реального IP

megainformatic - Fruity Loops Studio 9 - Как синтезировать свои сэмплы - изучаем возможности плагина Sytrus

megainformatic - Видоизменяем тему для Wordpress под свои нужды

megainformatic - Flash приложения и игры - Шаг 3 - управляемый шарик

megainformatic - Учимся создавать флеш-игры, что нужно знать для того, чтобы заняться созданием flash приложений и игр ?

megainformatic - Шаг 4 в освоении Flash-технологий - как анимировать персонажа и управлять им

megainformatic - Форма для смены шаблонов сайта. Модуль template selector

megainformatic - megainformatic cms express files + module slider

megainformatic - Создание сайта бесплатно или под заказ

megainformatic - Как создать flash баннер

megainformatic - Разработка flash-приложения для сайта: онлайн примерочная

megainformatic - Мои впечатления о книге - Владислав Крапивин - Журавленок и Молнии

megainformatic - Модуль отзывов/комментариев для вашего сайта

megainformatic - Модуль отзывов/комментариев для вашего сайта

megainformatic - Модуль отзывов/комментариев для вашего сайта

megainformatic - Модуль короткие ссылки short link

megainformatic - Работа с сокетами fsocket из php

megainformatic - Как создать игру Создание игровых панелей и индикаторов

megainformatic - Приключения Кости Коробкина - Как я провел лето - интерактивный комикс

megainformatic - Приключения Кости Коробкина - Как я провел лето - интерактивный комикс

megainformatic - Приключения Кости Коробкина - С новым годом - интерактивный комикс

megainformatic - Система управления сайтом на php - megainformatic cms admin files

megainformatic - обзор антивирусных средств защиты

megainformatic - как работает антивирус ?

megainformatic - Создание сайта для бизнеса

megainformatic - Новый взгляд на очевидные вещи

megainformatic - Разработка программ на c++

megainformatic - Немного о музыке

megainformatic - GET и POST запросы

megainformatic - для чего нужна карта сайта

megainformatic - Web Администрирование

megainformatic - Мысли о разном

megainformatic - Легко ли быть программистом

megainformatic - Глубины программирования на C++

megainformatic - Убираем лимит на размер импортируемого файла в PhpMyAdmin

megainformatic - Как создать torrent файл

megainformatic - Нужна ли валидация вашему сайту ?

megainformatic - Антивирус DrWeb

megainformatic - Калькулятор рассчёта стоимости зубопротезирования для стоматологической клиники

megainformatic - Что такое BitTorrent (БитТоррент)

megainformatic - Миссис Даутфайр 1993 фильм torrent

megainformatic - Как скачивать торрент-раздачу ?

megainformatic - Автотелега фильтр

Creating game on fle game engine - Simple game

5. Display a jumping ball, we learn how to ask for a sprite its center and introduced to the vector coordinate system



читать данную статью на русском

So, if you were able to figure out on their own and yet the ball was visible on the screen of your application, then you can congratulate !





Content

page 1 - Sprites

page 2 - Objects

page 3 - Overlay objects

page 4 - Coding - Setting parameters for the Scene Editor fge and write code to display the sprite ball in your first gaming application

page 5 - Show jumped ball

page 6 - Loading game scene

page 7 - Moving game scene

page 8 - Closing of the scene from the cavities by means of a black texture with a slot, restricts the movement of the scene

page 9 - We realize getting into the correct hole and around the holes - holes define the boundaries of sprites and sprite jumped ball

page 10 - Testing collisions

page 11 - Game score, sounds, music







You have overcome the first difficulty. Although there will be many more to come.

For those who did not understand what was the problem, explain.

simple_game\Media\textures\simple_game\tex_list.txt



ball\jump.tga; -0.7f; 0.1f; 0.909f; 0.5f; 0.5f; 64; 128; 0; 0; 4; 8.0f; 14.0f;

The ball will be displayed if z = 0.8999f instead z = 0.909f

For large values of z the ball is overlapped by other images. That is why it is not visible. Background with coordinates z = 0.9f, compared with a ball having a coordinate z = 0.909f, it is closer to the observer (z values smaller - closer to the observer, great - far away from the observer), and just covers it.

If you look closely at the code that was inserted according to the instructions on the page 4, you probably guess that methods

4)
g_Splash.Anim(); //this is what you find
g_AI_Ball_Sprite.Anim(); //this is what you need to add


5)
g_Splash.Draw(); //this is what you find
g_AI_Ball_Sprite.Draw(); //this is what you need to add


Animate and draw our ball.

Try commenting out one of them - g_AI_Ball_Sprite.Draw() или g_AI_Ball_Sprite.Anim() and recompile application.

//g_AI_Ball_Sprite.Anim(); //if you comment out this line - the ball will stop animated, ie, will not jump


Show ball

If you comment out g_AI_Ball_Sprite.Draw()

//g_AI_Ball_Sprite.Draw(); //if you comment out this line - the ball is not visible at all.


Now let's take a look at the output characteristics of sprites in games.
Open file
simple_game\Media\textures\simple_game\tex_list.txt



And look at the parameters of our ball -

ball\jump.tga; -0.7f; 0.1f; 0.8999f; 0.5f; 0.5f; 64; 128; 0; 0; 4; 8.0f; 14.0f;

If you read readme.txt attached to utility Coords2D, which allows you to configure the sprites and animations, you know what each of the options means.

Let's start in order.

name x y z xScale yScale Width Height xOffset yOffset FramesPerLine FramesNum AnimDelay;
ball\jump.tga; -0.7f; 0.1f; 0.8999f; 0.5f; 0.5f; 64; 128; 0; 0; 4; 8.0f; 14.0f;


name - is the name of the file loaded sprite;

x, y, z - coordinates of its display. Moreover, the x and y may be vector - the values of which are independent of the current screen resolution on-screen and can be set in pixels - depending on screen resolution.

Vector coordinates are defined by values from -1.0f to 1.0f and are versatile, allowing you to display sprites on any screen resolutions in approximately equal parts of it. Do not need to take any additional measures to take account of the current resolution of the screen the user running the application.

Below, we will understand how to use both of them.

xScale, yScale - scale output sprite along the x and y - value 1.0f - sprite display in natural size. Values smaller 1.0f - reduce sprite, great value - increase.

Width, Height - width and height in pixels of the sprite.

xOffset, yOffset - prior to displacement in pixels of the sprite. It makes sense if the sprite is placed within the image offset or used multisprite - Ie, an image that contains within itself several different sprites.

Learn more about creating and inserting a sprite in your game, you can also in a series of lessons - Balls on Lift - How make a game, in particular lesson How make a game - Inserting created graphics, sounds and music in the game It describes in detail including the work of inserting the game sprites and accurate description of the parameters.

FramesPerLine - number of frames in one line on X axis, for Y-axis is not applicable;

FramesNum - the number of frames in the animation sprite;

AnimDelay - time delay between the display of the sprite frame in fractions of a second. It defines thus the speed of the animation show.





If everything is clear - move to the experiments.

For start try to bring our ball in the center of the screen.

To do this, just need to open the file again

simple_game\Media\textures\simple_game\tex_list.txt



And set x = 0.0f, y = 0.0f -

ball\jump.tga; 0.0f; 0.0f; 0.8999f; 0.5f; 0.5f; 64; 128; 0; 0; 4; 8.0f; 14.0f;

Save the changes and restart the application simple_game, if you were running.

The ball will be displayed in almost the center of the screen, but slightly below its.

The ball in the center of the screen

Here, because if you remember, our animation looks like a ball -

jumped ball

jumped ball

Therefore, positioning the center of the screen sprite, we will get a slight shift down - because the ball inside the sprite is shifted down. In other words, the center of the sprite - this is the upper left corner, not the center of the ball.

Therefore, when you display sprites in the game, consider the possible shift of the center and enter the appropriate amendment.

So that turned out to be our ball exactly in center of the screen, in the code of its output in the module

simple_game\scripts\game_sprite\game_sprite.cpp

We need to find the line of code

CGameSprite::Draw

and the code is available there -

SpriteSprite->m_v2Vector2ScreenPos.x = SpriteSprite->m_Position.x;
SpriteSprite->m_v2Vector2ScreenPos.y = SpriteSprite->m_Position.y;


change to

SpriteSprite->m_v2Vector2ScreenPos.x = SpriteSprite->m_Position.x - 0.05f;
SpriteSprite->m_v2Vector2ScreenPos.y = SpriteSprite->m_Position.y + 0.2f;


save the changes, recompile your application and run it again.

The ball in the center of the screen

Now the ball will be even more precisely to the center. You can experiment with the offset values to center the ball more accurately.





So, you know what coordinate system vector.

You can try now file

simple_game\Media\textures\simple_game\tex_list.txt



2 to change the first value for the x and y values for a range from -1.0f to 1.0f, save changes to the file and restart the application simple_game

ball\jump.tga; 0.5f; 0.5f; 0.8999f; 0.5f; 0.5f; 64; 128; 0; 0; 4; 8.0f; 14.0f;

Vector coordinate system

The center of the screen is the point with coordinates x = 0.0f, y = 0.0f

The top edge of the screen is y = 1.0f, lower - y = -1.0f.

x for the left edge of the screen is x = -1.0f, and for the right x = 1.0f

Experiment with changing the coordinates in the file

simple_game\Media\textures\simple_game\tex_list.txt



to better understand yourself this important point.

Below in a video shown 4 different ball display in one of the 4 quarters of the coordinate axes.



for x, y = 0.5f, 0.5f - right at the top, -0.5f, -0.5f - the bottom left,
0.5f, -0.5f - bottom right, -0.5f, 0.5f - top left.

[previous] [next]



 

Registered comments



fle game engine - движок для создания игр
fle game engine - движок для создания игр


Something: Unexplained 2 captive of desires / Нечто: Необъяснимое 2 в плену желаний
Костя Коробкин Комикс Коллекционное издание - 6 комиксов, 81 страница, 220 mp3 треков
megainformatic Размещение баннерной рекламы у нас
Время загрузки: 1,1518