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


Balls and holes PC game / Balls and Holes PC игра
Вакансии
Игродельня
Сегодня
17 февраля 2019 20:54
Вход Регистрация Забыли пароль ?

megainformatic - МОДЕЛИРОВАНИЕ НА УРОВНЕ МНОГОУГОЛЬНИКОВ
             
подробнее...

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

megainformatic - Музыкальные миры - композиция Морозное утро - 10 версий

ЛЕТО

megainformatic - Нечто Необъяснимое - пре релиз

megainformatic cms admin

megainformatic cms admin

megainformatic - Основы создания 3d игр - проект Тайны Морских Глубин

megainformatic - уроки delphi directx 8.1 3d - Основы Вращений и Управления камерой

megainformatic cms seo

megainformatic cms admin

megainformatic - Моделируем девушку в 3d - Подготовка 2d-эскиза тела человека

megainformatic cms stat kit

megainformatic cms seo

megainformatic - Теория и практика 3d игр - О Кватернионах

megainformatic - Теория и практика 3d игр - Основы теории векторов

megainformatic - Теория и практика 3d игр - Важные замечания

megainformatic - Моделируем девушку в 3d используя 3ds max - Подготовка к моделированию ноги - готовим ширму

megainformatic - Моделируем девушку в 3d используя 3ds max - Выполняем моделирование ноги

megainformatic - Моделируем девушку в 3d используя 3ds max - Улучшаем созданную модель женской ножки

megainformatic cms stat kit

megainformatic - Подводная лодка и подводный мир

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

megainformatic cms social

megainformatic cms social Руководство пользователя

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

модуль слайдера

ТЗ на сайт коллективных покупок

модуль slider

megainformatic cms seo

Поддержка сайтом нескольких языков - модуль multi lang

Поддержка сайтом нескольких языков - модуль multi lang

megainformatic - Моделируем девушку в 3d используя 3ds max - другие статьи сборника статей - обзор

установка нового шаблона в joomla 2.5.4

Описание продукта megainformatic cms social

Описание продукта megainformatic cms social

megainformatic - ТЗ на сайт по аналогии rys-stroi.ru

megainformatic cms groupon

megainformatic - дизайн сайта строительной компании УЛЬТРА-СТРОЙ

megainformatic - Тестирование подключения платежной системы

megainformatic - Выпадающее окно регистрации на сайте

megainformatic - Тестирование подключения к платежной системе с использованием скрипта эмулятора

megainformatic - Модуль для регистрации пользователя на сайте

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

megainformatic - Быстрый подсчёт ключевых слов в статье

megainformatic - Модуль подсчёта ключевых слов в статье

megainformatic - Онлайн-сервис для подсчёта статистики ключевых слов

megainformatic - Пишем слайдер на javascript с нуля

megainformatic - Логика работы слайдера на javascript

megainformatic - Пишем свою соц. сеть - модуль предложений для webjob

megainformatic - Пишем свою соц. сеть - модуль предложений для webjob - часть реализации для личного кабинета

megainformatic - Пишем свою соц. сеть - Реализация файлового хранилища предложений в csv-файле

megainformatic - Тестирование подключения к платежной системе ЕДИНЫЙ КОШЕЛЕК (w1.ru) с использованием скрипта эмулятора

megainformatic - Пишем свою cms - шаг 1

megainformatic - Пишем свою cms - шаг 2

megainformatic - Пишем свою cms - шаг 3

megainformatic - бесплатная флеш игра freeway fury 2 - разработчик Serius Games

подробнее

Game craft - моделируем scv - часть 2

[все уроки game craft]  [моделируем scv]

В ходе наших уроков у Вас может получиться такая модель робота SCV.

Модель робота scv как в Starcraft 2

Не пытайтесь создать полностью похожую на образец модель с первого раза, и не отчаивайтесь если она получается не очень похожей или совсем не похожей. К процессу похожести надо стремиться, но если Вы раньше не занимались моделированием - задача может оказаться сложной. Поэтому сначала попытайтесь понять основные моменты и воссоздать хотя бы очень грубую и приблизительную модель. Когда у вас под рукой уже будет одна готовая модель - Вы уже узнаете все нюансы её создания - тогда можно создать еще одну - и уже зная все особенности у Вас наверняка получится второй - более качественный вариант модели. Процесс можно повторять многократно не удаляя при этом из сцены старые модели, а сдвигая их в сторону. Создавая новую модель Вы уже знаете все предыдущие допущенные Вами ошибки и просчёты - и в новой версии исправите их.

Создадим Box 32x32x32 и количеством сегментов 2х4х4 как показано на рисунке ниже. Обязательно отметьте галочкой пункт Generate Mapping Coords. Он отвечает за генерацию текстурных координат, чтобы в дальнейшем на созданную модель можно было нанести изображение текстуры. При этом модель уже будет не серая и безликая, а более яркая и понятная.

Модель робота scv как в Starcraft 2 - создаем Box

Теперь преобразуем наш Box в Editable Poly - кликнув в панели модификаций правой кнопкой и выбрав пункт Editable Poly. Процесс моделирования чем-то напоминает лепку из пластилина. Заготовкой является Box, а Editable Poly позволит работать с отдельными вершинами и гранями модели - перемещать, вращать и видоизменять их, выдавливать, вдавливать, позволяя придать модели практически любую желаемую форму.

Модель робота scv как в Starcraft 2 - Editable poly

Однако обратите внимание на уровень детализации модели - она будет являться несколько грубоватой, поскольку представляет так называемый Low-poly вариант. Это низкополигональная модель пригодная для вставки в игровое или мультимедийное приложение. Поскольку в игре у вас может быть сотня и больше экземпляров такой модели, а также помимо неё и многих других - то представляете, что общее количество вершин и полигонов представленных в 3d-сцене будет очень большим. Именно поэтому задача низкополигональной модели - добиться с одной стороны желаемого сходства с некоторым объектом (роботом SCV), а с другой - чтобы количество вершин и полигонов у модели было минимально возможным.

Выдавим кабину SCV робота, в которой сидит оператор. Откроем группу Editable Ploy нажав +. Выберем Polygon. Нажав и удерживая клавишу [Ctrl] кликнем нужные грани как показано на рисунке ниже.

Модель робота scv как в Starcraft 2 - Выдавим кабину SCV робота, в которой сидит оператор.

Выполним выдавливание и скос выбранных граней, используя кнопку Bevel в группе Edit Polygons. Первым движением мыши вы определяете расстояние на которое вдавливается/выдавливается выбранный полигон, а после клика мышью - размер скоса. Последний клик фиксирует модификацию. Действие можно отменить [Ctrl] + [Z] или кнопкой отмены (Undo) на панели инструментов.

Модель робота scv как в Starcraft 2 - Выдавим кабину SCV робота, в которой сидит оператор.

Если воспользоваться маленькой кнопкой Settings расположенной чуть правее кнопки Bevel - можно ввести точные значения для модификации - расстояние для вдавливания/выдавливания и размер скоса.

Модель робота scv как в Starcraft 2 - Выдавим кабину SCV робота, в которой сидит оператор.

Нажмём Cancel, чтобы не применять вторую модификацию Bevel. Теперь будем работать с отдельными вершинами. В окне модификаций в группе Editable Poly теперь выберем Vertex. Затем будем выделять нужные вершины и перемещать их, чтобы придать кабине нужную форму.

Модель робота scv как в Starcraft 2 - Выдавим кабину SCV робота, в которой сидит оператор.

Для того, чтобы выделять несколько вершин нажмите и удерживайте нажатой клавишу [Ctrl]. Иногда Вам может потребоваться проверить не выделили ли Вы случайно вершины на другой стороне модели. Для этого можно включить каркасный вид отображения модели. Клавишей [F3]. Вернуть вид к нормальному можно повторным нажатием [F3]. Если заметили случайно выбранную ненужную вершину - удерживая [Alt] кликаем по ней чтобы снять выделение. Кстати выделять вершины можно не только путём клика мышью левой кнопкой, но и рисуя область выделения (с нажатой левой кнопкой мыши) - тогда все вершины попавшие в выделенную область будут выделены.

Модель робота scv как в Starcraft 2 - Выдавим кабину SCV робота, в которой сидит оператор.

Очень полезная опция - Ignore Backfacing - позволит запретить выделение вершин на задней стороне модели когда вы выделяете целую область и не хотите чтобы вершины на обратной стороне модели выделялись. Итак при помощи инструмента Select And Move нам осталось переместить выбранные вершины вниз по оси Z.

Модель робота scv как в Starcraft 2 - Выдавим кабину SCV робота, в которой сидит оператор.

Применив серию перемещений и масштабирований добьёмся, чтобы кабина выглядела вот так.

Модель робота scv как в Starcraft 2 - Выдавим кабину SCV робота, в которой сидит оператор. Модель робота scv как в Starcraft 2 - Выдавим кабину SCV робота, в которой сидит оператор.

Выдавливаем ноги робота.

Модель робота scv как в Starcraft 2 - Выдавливаем ноги робота.

Корректируем кабину если требуется. И продолжаем выдавливать ноги.

Модель робота scv как в Starcraft 2 - Выдавливаем ноги робота.

Ноги как бы выгнуты коленями назад. Поэтому выделяем вершины в месте "коленного сгиба" и перемещаем назад - см. рисунок ниже.

Модель робота scv как в Starcraft 2 - Поэтому выделяем вершины в месте

Выдавливаем ступни, которые имеют колесную тягу и робот может катится не перемещая ног. Большой детализации не требуется, поэтому колеса не моделируем. Как видно из рисунка - нужно сначала выдавить грани вниз, затем выделив 2D-привязку вершин выполнить Cut (нарезку граней), небольшую коррекцию вершин и снова выдавливание.

Модель робота scv как в Starcraft 2 - Ступни робота.

Теперь выдавливаем боковые энерго-реакторы (блоки передней части с лампами). Сначала выдавливаем при помощи Bevel - придав суживающийся скос. Затем выделив грани только на левой стороне поворачиваем их на угол -20. Затем аналогично на правой - на 20. Затем снова Bevel. Потом опять корректируем поочередно левую и правую стороны. И снова последовательно выдавливаем и делаем скос.

Модель робота scv как в Starcraft 2 - выдавливаем боковые энерго-реакторы.

Модель робота scv как в Starcraft 2 - выдавливаем боковые энерго-реакторы.

Выдавим вентиляционные отдушины в верхней части модели.

Модель робота scv как в Starcraft 2 - вентиляционные отдушины в верхней части модели.

На рисунке показано, что нужно снова выделять нужные грани, выполнять скос (Bevel), вдавливать и корректировать путём вращения и перемещения выделенные грани до получения нужной формы.

Модель робота scv как в Starcraft 2 - вентиляционные отдушины в верхней части модели.

Башенку расположенную по-середине выдавливаем аналогично.

Модель робота scv как в Starcraft 2 - вентиляционные отдушины в верхней части модели.

После того как с вентиляционными башенками закончено, переходим к выдавливанию рук. На рисунках ниже показано слева-направо и сверху вниз как это происходит. Сначала выдавливаются элементы в стороны, а затем вперед. Каждый элемент - с постепенным утолщением, т. к. руки на концах массивнее чем у основания.

Модель робота scv как в Starcraft 2 - с вентиляционными башенками закончено, переходим к выдавливанию рук.

При выдавливании вперед руки должны расходиться в стороны. Если у вас получилось не так - нужно сместить грани рук влево и вправо. На рисунках слева-направо и сверху вниз показано как происходит моделирование рук. Сначала обе руки выдавливаются синхронно, а затем поочередно - т. к. концы рук отличаются. На левой расположен бур, а на другой двухпальцевый захват.

Модель робота scv как в Starcraft 2 - моделирование рук.

Далее мы закончим моделирование рук SCV и перейдём к завершающей части - моделированию элементов задней части робота SCV.

[все уроки game craft]  [моделируем scv]  Моделируем робота SCV шаг 2 часть 3

подробнее

Cradle / Колыбель PC game 2015 история неуспеха

Те кто видел игру Cradle / Колыбель 2015 скажут, что игра
вообще говоря спорная.

cradle игра

cradle игра

cradle игра

Тут нет обычных стандартов. Все нестандартно.

Лично мне эта игра очень понравилась. И я уже
публиковал пост на эту тему.

cradle игра

Но давайте разберемся какова цена успеха.

Заглянем в историю - основной автор игры Илья Толмачев
был арт директором в компании GSC.

В октябре 2010-го Илья основал собственную компанию по разработке игр — Flying Cafe for
Semianimals (рус. «Летающее кафе для полуживотных»). К нему присоединились его коллеги:
Виктор Меркулов, Евгений Литвинов, Роман Малинкин и Павел Михайлов (который через некоторое
время ушёл, но продолжал иногда консультировать). В процессе компании помогали и другие
 сотрудники GSC, например, Людмила Стародуб.

Первой (и единственной) игрой стала Cradle.


Вот как шла разработка игры в 2012 году

Релиз игры несколько раз откладывался и сдвигался по времени.


В итоге игру все-таки выпустили, но её ждал коммерческий провал (если верить этому источнику) -

чуда не произошло

В итоге разработчики не только не получили прибыль, а еще и по всей видимости остались сами
должны инвесторам, которые финансировали проект.


Главные просчеты:

зачем был взят движок unigine ?

В статье выше -
разработка игры в 2012 году

упоминается следующее:

На движке Unigine недавно вышел Oil Rush. Как работается с комплектом SDK? Удобен ли он?
Достаточно ли быстр?
— Работается с трудом. Сложности в нехватке инструментария, в основном. Например, функция
поиска пути появилась в движке тогда, когда мы уже расписали историю таким образом, чтобы
все персонажи в ней не перемещались, находились на одном месте всё время. Ида сидит на столе,
поджав под себя ноги, и никогда не покинет его, в частности, потому, что, приобретая движок,
мы учли, что там нет искусственного интеллекта, который мог бы управлять её перемещениями.
И, тем не менее, мы не жалеем о выборе — у Unigine потрясающе «чистый» рендер.
Его картинка ласкает взгляд и этим компенсирует другие недостатки.

Производительность неплохая, хотя Роману приходится очень нелегко в борьбе за лишние
несколько fps. Он придумывает невероятные уловки, чтобы оптимизировать игру. Вы стоите в
юрте, в окружении сотни динамических предметов и сотен мегабайт текстур, сосредоточенных
на крохотной площади, смотрите через дверной проём вдаль, на холм в трёх километрах от вас,
и видите, как в реке динамически отражается рощица деревьев. Вы должны, при этом, чувствовать
себя комфортно, мягко, без «тормозов» перемещаясь по виртуальному пространству. Реализовать
это не так просто.

(напомню на дворе был 2012 год)

игра Oil Rush сама по себе ничего интересного не представляет. По сути это лишь демонстрация
возможностей движка, а не игра.

Можете погуглить если интересно.



Что еще подвело игру - 

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


Поэтому если смотреть в ключе финансового успеха - игра представляет собой огромный провал.

Можно лишь посочувствовать авторам, которые смело и рьяно взялись за дело, но в итоге
получили ... ничего.



В своем предыдущем посте, где я делился впечатлениями об игре,
я упомянул такой вопрос: будет ли продолжение ?

Если бы я был автором, то скорее всего ответил бы - НЕТ !

Почему ? Ну вы сами наверное понимаете почему - основываясь на выводах
из всего вышеизложенного.


Поэтому если кто-то и сделает продолжение, то по всей видимости не те кто выпускал
первую игру.


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

Если игра делается только ради прибыли, то пострадают несомненно юзеры.

И наоборот если игра настоящая ИНДИ, как Cradle, то её ждет финансовый провал.
Игра будет крутейшая с точки зрения проделанной работы и вложенной в неё души.

Я просто нигде еще не видел таких игр как Cradle, правда.

Но увы. Продолжения у неё нет и не будет.

Потому что на этом обычно ставят большую и жирную точку.

А каково ваше мнение на этот счет ?

Знаете ли вы еще игры, которые были бы финансово неуспешны, но 
игрокам очень понравились ?

Поделитесь информацией.

cradle игра

cradle игра

Проследить за обсуждением статьи можно здесь -
Cradle / Колыбель история неуспеха

подробнее

 

Разбираем конструкции языка C++ на примере работы в Microsoft Visual Studio 2008

Урок 1 Основные операторы языка C++

 
     
     
     
 

Данный небольшой урок является введением в программирование на C++ в MSVS 2008

Вам нужно иметь установленную среду Microsoft Visual Studio 2005 или 2008 (можно триал)

 
     
  [назад] [далее] [к содержанию]  
     
  Мы рассматриваем основные конструкции языка C++ на примере работы в Microsoft Visual Studio 2008  
     
  В предыдущем уроке мы создали небольшой калькулятор. Этот урок позволил нам бегло познакомиться с некоторыми из конструкций языка C++ и некоторыми функциями.  
     
 

Теперь пришло время начать освещение основных базовых конструкций языка C++ на конкретных примерах

Основные операторы (statements) языка - этой теме посвящен следующий раздел MSVS 2008 Documentation (далее просто Help) - Development Tools and Languages > Visual Studio > Visual C++ > Reference > C/C++ Languages

- использование операторов помеченных меткой;

- построение выражений;

- пустой оператор;

- операторы наполнения (логические скобки);

- операторы выбора (ветвлений);

- операторы организации циклов;

- операторы перехода (передачи управления);

- операторы объявления переменных;

- операторы обработки исключений;

 
     
 

- использование операторов помеченных меткой;

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

Пример из MSVS 2008 Help

// labels_with_goto.cpp
// compile with: /EHsc
#include <iostream>
int main() {
using namespace std;
goto Test2;

cout << "testing" << endl;

Test2:
cerr << "At Test2 label." << endl;
}

 
     
 

данный пример рассчитан на консольное приложение. Как видим в отличие от delphi метка не требует предварительного объявления. Достаточно лишь указать допустимый идентификатор метки (Слово начинающееся с буквы) и закончить его двоеточием указав в нужном месте программы. Метка всегда указывает на исполнимый оператор! Даже если в этом месте будет записана строка комментария например так -

Test2:

//
cerr << "At Test2 label." << endl;

будет считаться, что метка указывает именно на исполнимый оператор, все незначащие строки (комментарии) при этом игнорируются.

 
     
 

- построение выражений;

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

Выражение должно завершаться точкой с запятой.

Примеры выражений:

coord_x = coord_x + 10 * MoveSpeed * TimeCounter;

absc2 = sqrt( abs ( c1 ) );

 
     
 

- пустой оператор;

Это строка содержащая лишь точку с запятой, т.е.

;

 
     
 

- операторы наполнения (логические скобки);

это пара фигурных скобок { и }. Применяется как блок операторов там, где вместо одного оператора нужно использовать целую группу. Блок может не содержать ни одного оператора вообще, тогда это просто пустой блок.

Пример:

if( Amount > 100 )
{

cout << "Amount was too large to handle\n";
Alert();

}
else

Balance -= Amount;

Все переменные объявленные внутри блока без префикса static являются локальными для данного блока.

 
     
 

- операторы выбора (ветвлений);

оператор switch - оператор ветвлений

мы уже сталкивались с этим оператором в предыдущем уроке, когда писали пример простейшего калькулятора

форма записи этого оператора

switch ( expression )
case constant-expression : statement
[default : statement]

выражение в скобках должно давать целочисленный результат

каждый оператор case позволяет выполнять заданный блок кода в зависимости от указанного целочисленного значения

блок кода при default выполняется когда значению выражения не соответствует ни одна строка с оператором case

Пример:

// switch_statement2.cpp
// C2360 expected
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
switch( tolower( *argv[1] ) )
{
// Error. Unreachable declaration.
char szChEntered[] = "Character entered was: ";

case 'a' :
{
// Declaration of szChEntered OK. Local scope.
char szChEntered[] = "Character entered was: ";
cout << szChEntered << "a\n";
}
break;

case 'b' :
// Value of szChEntered undefined.
cout << szChEntered << "b\n";
break;

default:
// Value of szChEntered undefined.
cout << szChEntered << "neither a nor b\n";
break;
}
}


заметьте, что в каждом блоке кода оператора case, а также в блок default применяется оператор break. Он позволяет закончить исполнение оператора switch, в противном случае может быть дополнительно выполнен блок кода в ветви default. Если это действительно требуется, то оператор break не нужен, в противном случае его нужно применять всегда!

Если Вы программировали на Delphi, то заметите, что аналогом оператора switch в delphi является оператор case. Т.е. switch в C++ и case в Delphi это одно и то же. Отличия состоят в синтаксисе, наличие строки default (в C++) и применении оператора break (в C++).

к операторам выбора также относится оператор условия if

if ( expression )
statement1
[else
statement2]

как видим он похож на использование оператора if в delphi, с тем лишь отличием, что слово then не используется.

Пример:

// if_else_statement.cpp
#include <stdio.h>

int main() {
int x = 0;
if ( 1 ) // if statement #1
// {
if ( !x ) // if statement #2
printf_s("!x\n");
else // paired with if statement #2
printf_s("x\n");
// }
}

существенное отличие оператора if в C++ состоит в том, что выражение при if может принимать не логические значения (тип boolean), а целые - 0 и 1. Нулю соответствует логический FALSE (ложь), единице TRUE - истина.

Поэтому в C++ аналогом delphi-конструкции

if SomeObject <> nil then {...}

else {...};

будет являться

if SomeObject

{

}

else

{

}

 
     
 

- операторы организации циклов;

служат для выполнения одной и той же группы операторов итеративно.

Различают циклы с предусловием while, пост условием do и цикл с заданным количеством итераций for

while ( expression )
statement

в цикле while группа операторов statement выполняется пока значение выражения expression не достигнет нуля

Пример:

кусок кода на delphi7

aCurrentCharnum := 0;
SomeParamStr = 'param1; param2;';
ParamDelimeter = ';';
ParamStr := '';
while aCurrentStr[aCurrentCharnum] <> ParamDelimeter do begin
ParamStr := ParamStr + aCurrentStr[aCurrentCharNum];
Inc(aCurrentCharNum);
end;

при условии, что требуемые переменные объявлены, на C++ будет выглядеть так

int aCurrentCharnum = 0;
String^ SomeParamStr = L"param1; param2;";
Char ParamDelimeter = ';';
String^ ParamStr = L"";
String^ aCurrentStr = SomeParamStr;
while (aCurrentStr[aCurrentCharnum] != ParamDelimeter)
{
ParamStr = ParamStr + aCurrentStr[aCurrentCharnum];
aCurrentCharnum++;
}

 
     
  Обязательно напишите и проверьте работу этого кода в приложении наподобие HelloWorldCLR  
     
 

оператор цикла с пост-условием do

do
statement
while ( expression ) ;

оператор do является аналогом цикла repeat..until в delphi

Пример:

int i = 0;
String^ SomeStr = L"";

do
{
SomeStr = SomeStr + Convert::ToString(i);
i++;
} while (i < 3);
button1->Text = SomeStr;

по нажатию на кнопку на ее поверхности выводится 012

 
     
 

цикл for

for ( init-expression ; cond-expression ; loop-expression )
statement

про цикл for в документации по MSVS рассказано много интересных вещей, так что за подробностями обратитесь к ней.

Кратко же использование цикла for выглядит так -

Пример:

String^ SomeStr = L"";

for (int i = 0; i<5; i++)
{
SomeStr = SomeStr + Convert::ToString(i);
}
button1->Text = SomeStr;

на поверхности кнопки появляется текст 01234

 
     
 

- операторы перехода (передачи управления);

к операторам перехода относятся операторы изменяющие обычный последовательный ход исполнения программы -

break, continue, return, goto

оператор break аналогичен оператору break в delphi - служит для немедленного выхода из цикла for, while и do, кроме того используется для выхода из ветви оператора switch (в delphi для этих целей не применяется)

оператор continue аналогичен оператору continue в delphi - служит для немедленного перехода к следующей итерации цикла for, while и do

оператор return

return [expression]

служит для возврата из функции или процедуры. Если выполняется возврат из функции, то значение выражения expression возвращается в качестве результата. Для функций void (процедур) никакого результата не возвращается.

Для возврата из процедуры (функция с результатом void) специального вызова return не требуется. Выполнение процедуры будет закончено там, где кончаются ее логические скобки.

оператор goto служит для безусловной передачи управления на указанную метку -

goto identifier ;

Примеры:

для корректного выполнения примера в приложении Windows Forms добавьте на форму поле ввода textBox1

int somenum = Convert::ToInt32(textBox1->Text);

for (int i = somenum; i < (somenum+3); i++)
{
if (i == (somenum+1))
{
textBox1->Text = Convert::ToString(i);
break;
}
}

данный код добавьте в обработчик нажатия на кнопку button1 размещенную на форме Form1

по нажатию на кнопку в поле textBox1 вместо введенного значения появляется значение на 1 большее

в случае когда поля textBox1 пусто вырабатывается исключительная ситуация. Ее можно избежать, если для свойства Text у textBox1 задать любое числовое значение, которое будет значением по умолчанию

// continue_statement.cpp
#include <stdio.h>
int main()
{
int i = 0;
do
{
i++;
printf_s("before the continue\n");
continue;
printf("after the continue, should never print\n");
} while (i < 3);

printf_s("after the do loop\n");
}

пример с использованием continue показывает как строка after the continue, should never print никогда не будет выведена на консоль

// return_statement2.cpp
#include <stdio.h>

int max ( int a, int b )
{
return ( a > b ? a : b );
}

int main()
{
int nOne = 5;
int nTwo = 7;

printf_s("\n%d is bigger\n", max( nOne, nTwo ));
}

пример функции выбора максимального числа из двух заданных

// goto_statement.cpp
#include <stdio.h>
int main()
{
int i, j;

for ( i = 0; i < 10; i++ )
{
printf_s( "Outer loop executing. i = %d\n", i );
for ( j = 0; j < 2; j++ )
{
printf_s( " Inner loop executing. j = %d\n", j );
if ( i == 3 )
goto stop;
}
}

// This message does not print:
printf_s( "Loop exited. i = %d\n", i );

stop:
printf_s( "Jumped to stop. i = %d\n", i );
}

а это был пример использования оператора goto

 
     
  в следующем уроке мы рассмотрим операторы объявления переменных и обработки исключений  
     
  [назад] [далее] [к содержанию]  
подробнее

     
     
  Уроки Photoshop  
     
  Уроки Photoshop  
     
 

Данный сборник уроков рассчитан на освоение работы в Adobe Photoshop версий 6, 7, 8, 9, 10, 11 и выше. Для более ранних и более поздних версий возможны некоторые отличия в описаных действиях. Общие описанные принципы остаются неизменными!

В сборник вошли 35 статей - быстрый старт, быстрый старт 2, раскраска, варианты раскраски, текстуры, горная порода, синтез, трава, песок, набор текстур, глина, ткань, огонь, растения, металл, элемент, небо, камни, кора, вода, древесина, шерсть, обработка фото, фотомонтаж, эффекты, ретушь, оцветнение, визитка, открытка, виньетка, штабдок, персонаж, gif, web-арт, RGB / HSB / CMYK

 
     
  все уроки Photoshop    
   
  Купить программу Уроки Photoshop  
  Требования к читателю  
     
  У читателя предполагается наличие базовых принципов владения ПК - пониманием работы в Windows и типовых Windows-приложениях типа Проводник (Мой компьютер).  
     
  На компьютере необходимо иметь установленную программу Adobe Photoshop одной из версий от 6 до 9. Для версий ниже 6 или выше 9 могут быть более или менее значительные расхождения с тем, что описано.  
     
  Рисуем волка из мультфильма  
  Рисуем волка из мультфильма - Показанная техника рисования применялась при создании мультфильма в эмуляторе электронной игры ИМ-02 "Ну, Погоди!"  
     
     
  Содержание:  
  основные части окна Photoshop  
  Быстрый старт - основные элементы окна, открытие графических файлов, инструмент Лупа (Zoom Tool), растровые изображения, определение объема изображения в памяти;  
     
     
  контуры цветка  
  Быстрый старт page 2 - о форматах графических файлов, векторная графика, создание нового изображения, рисование контуров, сохранение файла.  
     
  нарисуем вот такого медвежонка  
  Раскраска - использование слоёв, заливка, инструмент выделения Волшебная палочка;  
     
  вид раскрашенной текстуры, наложенной на 3D-модель  
  Варианты раскраски - градиентные заливки, применение инструментов Кисть, Осветление, Затемнение.  
     
  Для тех, кто постиг предыдущий материал (stage 1)  
     
  образец текстуры - Грязь  
  Текстуры, текстурные заливки - понятие текстуры, текстурной заливки, создание тайловых (бесшовных) текстур.  
     
  фотография реального образца текстуры  
  Создаем текстуру горной породы на основе фотографии реального образца - описаны методы исследования структуры текстуры и процесс создания фотореалистичной текстуры.  
     
  искусственно созданный новый образец  
  Создание вариантов на тему созданной текстуры - описываются методы исследования и синтеза новых текстур.  
     
  текстура травы  
  Рисование текстуры травы - описывается методика создания однородных текстур на примере создания куста травы с последующим распространением на всём пространстве текстуры. Применив Фильтр Смещение (Offset) и заполнив швы можно получить бесшовную текстуру.  
     
  песок  
  Рисование текстуры песка, детализация текстуры - описывается способ рисования песка, добавление деталей (теней, бликов, камешков и т.п.)  
     
  базовый набор текстур игрового (художественного) проекта  
  Подготовка набора текстур для игрового (художественного) проекта - некоторые основные типы текстур, особенности их создания, детализации. Рассматриваются принципы создания огоня, воды, неба, ткани, металла, шерсти, дерева и некоторых других.  
     
  clay - глина  
  Рисование текстур глина, грязь - с использованием Фильтров Шум, размытие по Гауссу описан пошаговый процесс создания текстуры, похожей на глину, грязь. Показан способ добавления деталей - трещин на пересохшей глине.  
     
  текстуры ткани  
  Создание тканеподобных текстур - показано как из отдельных элементов строится текстура. Варьированием элементов, фильтров и эффектов можно достичь самых различных результатов. Показана работа вначале с обесцвеченной (черно-белой текстурой) для лучшего анализа светлотности. Затем текстура оцветняется. Приводятся и 2 альтернативных варианта результатов.  
     
  огонь  
  Огонь, создание огня. Описывается рисование текстуры огня Кистью и при помощи фильтров. Создание альфа-маски, анимация в Image Ready.  
     
  Создание растительных текстур и объектов  
  Создание растительных текстур и объектов на примере создания текстуры дерева. Тестирование полученных текстур на 3D-моделях.  
     
  примеры околометаллических текстур  
  Продолжаем создавать основные типы текстур - металл.  
     
  один из примеров чешуевидной текстуры  
  Остановимся на создании элементно-упорядоченных текстур на примере создания чешуевидной текстуры  
     
  небо и облака  
  Займемся рисованием небесных текстур - небо и облака.  
     
  каменистая порода  
  Нарисуем обломки скал и камни.  
     
  вариант текстуры коры дерева  
  Создаем кору дерева.  
     
  анимированная текстура воды  
  Создание анимированной текстуры (альфа-маски) для воды  
     
  текстура древесины  
  Создание древесины - просто и быстро  
     
  шерсть  
  Создаем шерсть животного - еще быстрее, еще проще  
     
  Ну что ж, мы очень много времени уделили рисованию, созданию от нуля, совершенствованию, на примере создания некоторых основных типов текстур. Если Вы всерьез хотите заняться текстурами и рисованием текстур, то этого материала, конечно же совсем недостаточно. Вам следует заняться дальнейшей проработкой материала - подбором необходимых натуральных образцов, уделению внимания деталям, созданию разновидностей, документированию тех новых особенностей, которые Вы обнаружите в ходе работы. И так, шаг за шагом Вы придете к созданию своей личной библиотеки текстур и алгоритмов их создания. Главное теперь - это не останавливаться на достигнутом и продолжать работу далее. А сейчас мы займемся рассмотрением вопросов, по большей части посвященных фотодизайну и обработке цифрового фото, хотя, будут затронуты и вопросы креативной работы, создания от нуля - в соответствующих темах. Приступим!  
     
  устранение эффекта красных глаз, цветокоррекция, очистка от пыли и царапин  
  Обработка фото - устранение эффекта красных глаз, цветокоррекция, очистка от пыли и царапин  
     
  Основы фотомонтажа  
  Основы фотомонтажа - использование ластика для правильного стирания фона, изменения положения, масштаба вставляемых объектов, цветокоррекция, дополнительные элементы сцены, построение трехмерной вспомогательной сетки для облегчения ориентирования объектов в сцене. Также разобраны некоторые типичные ошибки фотомонтажа.  
     
  Применение эффектов слоев к изображениям, тексту  
  Применение эффектов слоев к изображениям, тексту - показано на примере рисования клеточной сетки, поэкспериментировав с применением эффектов к ней Вы быстро поймете что и как.  
     
  Ретушь старых фотографий  
  Ретушь старых фотографий - показаны основные инструменты восстановления, показан способ Ретуши с соблюдением критерия Качество/Скорость.  
     
  Обесцвечивание цветных, оцветнение черно-белых фотографий  
  Обесцвечивание цветных, оцветнение черно-белых фотографий - показаны способы оцветнения, обесцвечивания.  
     
  придумываем и создаем дизайн визитки сотрудника фруктовой компании  
  Создание визитки - придумываем и создаем дизайн визитки сотрудника фруктовой компании  
     
  как сделать интересную фотооткрытку при помощи фотомонтажа  
  Создание открытки - как сделать интересную фотооткрытку при помощи фотомонтажа  
     
  создание виньеток  
  Создание виньеток - Вам будет рассказано и показано как создать виньетку для выпускников садика, школы или института  
     
  готовая 3D-модель с наложенной текстурой  
  Изображения для компьютерных игр - показан пример раскрашенной текстурной развертки для 3D-модели, рассказано о создании детализированных текстур.  
     
  3D-персонаж  
  Рисование персонажа для компьютерной игры - рассказано об основных моментах создания персонажа человека, имеется готовая модель персонажа в формате 3ds max7, которую можно использовать как манекен для экспериментов с рисованием текстуры персонажа  
     
  простейшая анимация  
  Создание анимаций для Web-публикаций в формате GIF (используем Image Ready)  
     
  создание объемных кнопочек  
  Графика для web-публикаций - пример создания объемной кнопки с надписью.  
     
  цвет, цветовые модели  
  Принципы растровой графики, цветовые модели (RGB, HSB, CMYK, градации серого, Lab, Web). Рассказано о формировании изображения на экране монитора, о том как воспринимает цвет человеческий глаз и о том, что такое цветовые модели.  
     
     
   
     

Моё портфолио выполненных проектов сайтов и приложений



посмотреть портфолио в виде списка

для просмотра изображений в увеличенном виде кликните по одному из них.


адаптация шаблона для сайта про незамерзающую жидкость
разработка сайта под ключ http://m-dacha.ru/
дизайн шаблона, верстка интеграция
различные доработки функционала и контента http://smokoff.ru
контент-менеджмент mospf.ru
перенос сайта с самописной cms на joomla - http://my-english.org/
верстка http://bomond.by/
доработки функционала http://lider-in.ru/
сайт под ключ - http://continentalsingles.com
подключение системы рассылки megainformatic cms emailer - http://allcarport.ru/
внедрение карусели - http://www.flexyheat.ru/
http://blagoustroy.ru/ (редизайн и верстка)
http://odevaembebikov.ru/ (верстка, доработка функционала)
http://hino-samara.ru/ (доработка функционала, контент-менеджмент)
http://lr-zp.ru/ (подключение Робокассы)
доработки функционала http://imidzh-studiya.com/
http://technopro-3000.ru/ (сайт под ключ)
http://el-kalyan.ru/ (сайт под ключ)
http://petline.ru/ (верстка, интеграция в движок)
http://casino-zodiac.org/ (подключение платежной системы free-kassa.ru, интеграция в движок сайта, редизайн, верстка, мелкие доработки)
http://iwo-tech.ru/ (доработки, контент-менеджмент)
http://minilance.ru/ (подключение платежной системы РОБОКАССА)
http://kosmetologvmoskve.ru/ (исправлена ошибка в верстке вывода комментариев)
http://megainformatic.ru/webprojects/groupon/ (сайт коллективных покупок с нуля под ключ на базе megainformatic cms)
http://jado74.ru/ (сайт под ключ)
http://megainformatic.ru/webprojects_cms/ekstm/ (сайт под ключ)
megainformatic live chat
Начать беседу
X
 

Оставленные комментарии



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


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