Результаты поиска
| |
Saitei | Дата: Суббота, 05 Января 2013, 15:30 | Сообщение # 901 | Тема: Графика в консоли |
старожил
Сейчас нет на сайте
| TimKruz, это, как я понял, на чистом iostream пока что нереализуемо?
|
|
| |
Saitei | Дата: Суббота, 05 Января 2013, 00:47 | Сообщение # 902 | Тема: Вопрос-Ответ (C++) |
старожил
Сейчас нет на сайте
| Цитата (Edison6) И вопрос сразу второй мне для моей первой сетевой игры где будут бегать два спрайта необходима кроссплатформенная библотека для работы с сетью какие есть предложения? Мне вот тоже интересно. Какую-нибудь легенькую и с целой кучей русских уроков... на WinSock мало что находил (в основном книги).
|
|
| |
Saitei | Дата: Суббота, 05 Января 2013, 00:18 | Сообщение # 903 | Тема: Вопрос-Ответ (C++) |
старожил
Сейчас нет на сайте
| Нохчи, извините, совсем не заметил. Спасибо большое за помощь
|
|
| |
Saitei | Дата: Пятница, 04 Января 2013, 23:59 | Сообщение # 904 | Тема: Вопрос-Ответ (C++) |
старожил
Сейчас нет на сайте
| Код #include <iostream> #include <conio.h> #include <Windows.h> using namespace std;
char map[6][6] ={"1|2|3", "-+-+-", "4|5|6", "-+-+-", "7|8|9"}; int input; bool finished = false;
int main() { while(!finished) { system("cls"); for(int i = 0; i < 6; i++) { for(int j = 0; j < 6; j++) { cout<<map[i][j]; } cout<<'\n'; } input = getch(); if(input=='1') { if(map[0][0]!='O') { map[0][0] = 'X'; input=0; } } if(input=='2') { if(map[0][2]!='O') { map[0][2] = 'X'; input=0; } } if(input=='3') { if(map[0][4]!='O') { map[0][4] = 'X'; input=0; } } if(map[0][0]=='x' && map[0][2]=='x' && map[0][4] == 'x') { finished = true; } } cout<<"YOU WIN!!!"; getch(); return 0; } сделал так, но из цикла программа не вышла => условие работает некорректно
|
|
| |
Saitei | Дата: Пятница, 04 Января 2013, 23:50 | Сообщение # 905 | Тема: Вопрос-Ответ (C++) |
старожил
Сейчас нет на сайте
| ругается на строку: Код if(map[0][0] & map[0][2] & map[0][4] = 'x') { finished = true; } почему? как быть? Делаю крестики-нолики
|
|
| |
Saitei | Дата: Пятница, 04 Января 2013, 16:55 | Сообщение # 906 | Тема: Графика в консоли |
старожил
Сейчас нет на сайте
| GECK, Блин... А ссылку не могу открыть ("Веб-страница недоступна")... Можете как-нибудь перезалить, если не сложно? Очень обрадовался, с удовольствием посмотрю!  Добавлено (03.01.2013, 22:11) --------------------------------------------- скачал. Сейчас буду рассматривать)) Вопросы лучше сюда задавать или лично Вам в ЛС? Мне действительно очень интересно. Серьёзно - о написании таких игрушек мечтаю уже довольно давно Добавлено (04.01.2013, 16:55) --------------------------------------------- кто-то сделает пример (минимальный, легкий) реализации двухбуфферной отрисовки? У меня сегодня день рождения - сделайте подарок (lol)) )
|
|
| |
Saitei | Дата: Четверг, 03 Января 2013, 20:59 | Сообщение # 907 | Тема: Графика в консоли |
старожил
Сейчас нет на сайте
| GECK, спасибо за ссылки, сейчас посмотрю. Мне действительно очень интересно =) Буквально минуты три назад смог инициализировать и нарисовать двумерный массив. Даже и не подозревал, что такие чудеса творить можно..)) Правда вот как я делаю: Цитата (Saitei) Массив перерисовывается\изменяется каждый раз за N то консоль сама по себе блымает. Ну или при передвижении ГГ (великая честь для символа "Т"...)) ). Это как-нибудь устранить можно? Задержки как таковой четкую я не ставил. Всё идет через чистый while(true)
|
|
| |
Saitei | Дата: Четверг, 03 Января 2013, 19:26 | Сообщение # 908 | Тема: Графика в консоли |
старожил
Сейчас нет на сайте
| Привет всем! Может быть я всем уже надоел, но... Кого ещё не сильно задрал - великодушно прошу помочь\подсказать Совсем недавно я загорался желанием переходить на OpenGL, но там возникли свои обстоятельства и не получилось... Поэтому снова возвращаюсь к программированию на консоль. Суть дела такова: уже давно (месяцев эдак три точно прошло) мечтаю попробовать написать консольную игрушку с символьной графикой (вроде это называется "ASCII игры", точно не знаю... Если глупость ляпнул - прошу поправить). Проблема моя заключается в том, что я не знаю куда смотреть и что учить. Местами понимаю как должен работать алгоритм, но каких-либо функций для реализации я не знаю. Если вам не сложно - то пожалуйста, помогите, подскажите на что обратить внимание и вообще что учить. Было бы совсем шикарно - если вы показали какой-нибудь легенький пример (как говорится "показали мастер-класс :)"). Классы понимать начал, с массивами уже работал. Типы переменных и циклы тоже знаю. Дело именно в том, что не знаю куда смотреть... Так как мне быть? ПРИМУ ЛЮБУЮ ПОМОЩЬ И СОВЕТЫДобавлено (03.01.2013, 19:26) --------------------------------------------- пока я думаю над таким алгоритмам: вся карта - двумерный массив типа byte. И в зависимости от значения в определенном месте ставится определенный символ (например 1 = "%"). Массив перерисовывается\изменяется каждый раз за N миллисекунд. Но как нарисовать массив в консоли и как "управлять" (т.е. смещать какой-либо объект) массивом - не знаю... Хоть убейте - не знаю. А хочется знать
|
|
| |
Saitei | Дата: Среда, 02 Января 2013, 15:48 | Сообщение # 909 | Тема: GLUT. Нужна помощь новичку :( |
старожил
Сейчас нет на сайте
| ну и... чтобы объяснялось практически ВСЁ... Просто какой раз уже сталкиваюсь с "уроками", где вместо полезной информации в голову впихивают пустоту. То есть совсем ничего не объясняют и говорят: "Вставьте код, теперь у вас ...". Я просто человек вредный, страдаю чувством неполноценности. Если вижу что-то непонятное - жутко начинает это беспокоить
|
|
| |
Saitei | Дата: Среда, 02 Января 2013, 15:31 | Сообщение # 910 | Тема: Вопрос-Ответ (C++) |
старожил
Сейчас нет на сайте
| Цитата (Tikara) #include <time.h> int main(){ clock_t time; time = clock(); /* вызов функции */ time = clock() - time; return 0; } Спасибо большое. Есть немного мелких вопросов (пожалуйста, ответьте, если я вам ещё не сильно надоел)) ): time = clock(); - это мы "заводим" таймер? time = clock() - time; - а это мы его останавливаем? Я правильно понимаю?
|
|
| |
Saitei | Дата: Среда, 02 Января 2013, 15:26 | Сообщение # 911 | Тема: GLUT. Нужна помощь новичку :( |
старожил
Сейчас нет на сайте
| Цитата (TimKruz) P.S. Может быть, попробуешь разобраться (хотя бы в теории) с чистым OpenGL, а потом утилиты типа GLUT начнёшь юзать? Ох... Здесь я на все 100% солидарен... Только есть проблемы - а с чего начинать учить чистый OpenGL? Я книжечки уже искал, но в основном находил справочники (например от книги "OpenGL. Красная книга" я ничего не извлёк, так как там толком ничего не объясняют и, как мне показалось, там всё написано для людей "уже в теме"). Если посоветуете книжку для чайника - буду ОЧЕНЬ благодарен. Ищу уже чёрти-сколько, а никак найти не могу. Я бы купил, но в городе моём таких книг нет. А ждат ьпока придет посылка из интернета - чересчур долго, выдержки не хватит..)) Вообще существуют ли такие книги? Чтобы всё для чайника писалось, с примерами кода, с постановкой и решением определенных задач? И на русском языке? Я конечно понимаю, знание английского языка - мощное оружие (коим я владею хорошо), но всё равно хочется что-нибудь почитать на родном языке... Вы можете что-нибудь посоветовать? Просто ищу - а ничего найти не могу. Вот просто книг "С++ с нуля" - море, а вот OpenGL...
|
|
| |
Saitei | Дата: Вторник, 01 Января 2013, 17:29 | Сообщение # 912 | Тема: Вопрос-Ответ (C++) |
старожил
Сейчас нет на сайте
| Здавствуйте! Скажите пожалуйста, а как можно засечь время в C++? Сделать что-то вроде таймера. Хочу посмотреть за сколько секунд (или миллисекунд) функция выполняется
|
|
| |
Saitei | Дата: Вторник, 01 Января 2013, 17:25 | Сообщение # 913 | Тема: GLUT. Нужна помощь новичку :( |
старожил
Сейчас нет на сайте
| Вообщем я пока что написал вот такой код (согласен, его очень мало. Но сжальтесь над новичком)) ): Код #include <glut.h> //OpenGL Utility Toolkit (GLUT)
void Render() { glClear(GL_COLOR_BUFFER_BIT); glFlush(); }
void Init() { glClearColor(0,0,0,0); //Цвет фона (в формате RGBA) }
int main(int argc, char** argv) { /*Инициализация*/ glutInit(&argc, argv); //Инициализация GLUT glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB); //Режим вывода графики на дисплей glutInitWindowSize(640, 480); //Размеры создаваемого окна glutInitWindowPosition(150,150); //Положение созадваемого окна glutCreateWindow("Saitei"); //Создаём окно с определенным заголовком /*Регистрация функций*/ glutDisplayFunc(Render); //Регистрируем цикл рисования Init(); //Инициализация glutMainLoop(); //Главный цикл GLUT return 0; } Пожалуйста, обїясните мне конкретнее что делает glClear(GL_COLOR_BUFFER_BIT); glFlush(); и glClearColor(0,0,0,0);? Ну да, комментировал я сам, искал. Но во многих местах я не совсем уверен. Если есть в комментариях кода какие-то неточности - пожалуйста, поправьте меня. Заранее благодарю, обязательно поставлю плюсы
|
|
| |
Saitei | Дата: Понедельник, 31 Декабря 2012, 22:42 | Сообщение # 914 | Тема: Классы. Как с ними работать? |
старожил
Сейчас нет на сайте
| Tikara, goldsphere, спасибо большое! А если я напишу delete a; , то объект a вместе с его переменными удалится? Я правильно понимаю? Просто учитель заставил писать программу, используя классы (а я в них ещё не сильно вник..)
Сообщение отредактировал Saitei - Понедельник, 31 Декабря 2012, 22:48 |
|
| |
Saitei | Дата: Понедельник, 31 Декабря 2012, 19:56 | Сообщение # 915 | Тема: Классы. Как с ними работать? |
старожил
Сейчас нет на сайте
| Код #include <iostream> #include <Windows.h> using namespace std;
class line_ur{ public: int a, b; void ent(){ cout<<"ax^2=b;"<<'\n'; cout<<"Пожалуйста, введите значения для a и b"<<'\n'; cout<<"a:"; cin>>a; cout<<"b:"; cin>>b; } };
int main(){ setlocale( LC_ALL,"" ); cout<<"Здравствуйте! Пожалуйста, выберите действие из меню:"<<'\n'; cout<<"(1)Линейные уравнения"<<'\n'; cout<<"(2)Квадратные уравнения"<<'\n'; cout<<"(3)Выход"<<'\n'; int choice; cin>>choice; if(choice==3){
} if(choice==2){
} if(choice==1){ system("cls"); line_ur* a = new line_ur(); a.ent(); } return 0; } ничегошеньки не получается... и не пойму почему
|
|
| |
Saitei | Дата: Пятница, 28 Декабря 2012, 00:05 | Сообщение # 916 | Тема: Дискриминант. Работает программа некорректно... |
старожил
Сейчас нет на сайте
| Цитата (Нохчи) формула b^2-4ac вроде но pow же вроде B возводит в квадрат... Всё правильноДобавлено (28.12.2012, 00:04) --------------------------------------------- Нохчи, ОЙ!!! НЕ ЗАМЕТИЛ, СЕЙЧАС ИСПРАВЛЮ. Спасибо! Добавлено (28.12.2012, 00:05) --------------------------------------------- всё равно работает некорректно...
|
|
| |
Saitei | Дата: Четверг, 27 Декабря 2012, 23:19 | Сообщение # 917 | Тема: Дискриминант. Работает программа некорректно... |
старожил
Сейчас нет на сайте
| Код #include <iostream> #include <math.h> using namespace std;
int A,C; double B;
int main() { setlocale(0,"Russian"); while(true) { start: cout<<"Введите значения переменных A, B, C (можно через пробел)"<<'\n'; cout<<"(A>0)"<<'\n'; cin>>A>>B>>C; if(A<=0) { cout<<"Сожалею, но число A("<<A<<") меньше нуля или равно нулю"<<'\n'; goto start; } double D = pow(B,2)+4*A*C; if(D<0) { cout<<"Решений нет"<<'\n'; goto start; } if(D=0) { cout<<"Один корень. x = "<<-B/2*A<<'\n'; goto start; } if(D>0) { cout<<"Два корня. x1 = "<<(-B-sqrt(D))/2*A<<"; x2 = "<<(-B+sqrt(D))/2*A<<'\n'; goto start; } } return 0; } ещё было бы круто избавиться от goto, но при этом сильно не изменяя мою программуДобавлено (27.12.2012, 23:19) --------------------------------------------- p.s. какие значения я не вводил бы - всё начиналось с начала...
|
|
| |
Saitei | Дата: Пятница, 14 Декабря 2012, 15:48 | Сообщение # 918 | Тема: Конференция программистов геймдева! |
старожил
Сейчас нет на сайте
| Snuux, она ещё жива, эта конференция?
|
|
| |
Saitei | Дата: Пятница, 14 Декабря 2012, 15:39 | Сообщение # 919 | Тема: Графика, выбираю графическую библиотеку (для новичка) |
старожил
Сейчас нет на сайте
| Snuux, Code 1>------ Build started: Project: SDL1, Configuration: Debug Win32 ------ 1>main.obj : error LNK2019: unresolved external symbol _SDL_Quit referenced in function _SDL_main 1>main.obj : error LNK2019: unresolved external symbol _SDL_FreeSurface referenced in function _SDL_main 1>main.obj : error LNK2019: unresolved external symbol _SDL_Delay referenced in function _SDL_main 1>main.obj : error LNK2019: unresolved external symbol _SDL_Flip referenced in function _SDL_main 1>main.obj : error LNK2019: unresolved external symbol _SDL_UpperBlit referenced in function _SDL_main 1>main.obj : error LNK2019: unresolved external symbol _SDL_LoadBMP_RW referenced in function _SDL_main 1>main.obj : error LNK2019: unresolved external symbol _SDL_RWFromFile referenced in function _SDL_main 1>main.obj : error LNK2019: unresolved external symbol _SDL_SetVideoMode referenced in function _SDL_main 1>main.obj : error LNK2019: unresolved external symbol _SDL_Init referenced in function _SDL_main 1>MSVCRTD.lib(crtexew.obj) : error LNK2019: unresolved external symbol _WinMain@16 referenced in function ___tmainCRTStartup 1>D:\zadaniya\SDL\SDL1\Debug\SDL1.exe : fatal error LNK1120: 10 unresolved externals ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
|
|
| |
Saitei | Дата: Четверг, 13 Декабря 2012, 23:57 | Сообщение # 920 | Тема: Графика, выбираю графическую библиотеку (для новичка) |
старожил
Сейчас нет на сайте
| RUNGOGET2THECHOPAH, Quote #include <SDL.h>
int main( int argc, char* args[] ) { SDL_Surface* test = NULL; SDL_Surface* testscreen = NULL; //Start SDL SDL_Init( SDL_INIT_EVERYTHING );
//Set up screen testscreen = SDL_SetVideoMode( 640, 480, 32, SDL_SWSURFACE );
//Load image test = SDL_LoadBMP( "01.bmp" ); //Apply image to screen SDL_BlitSurface( test, NULL, testscreen, NULL );
//Update Screen SDL_Flip( testscreen );
//Pause SDL_Delay( 2000 ); //Free the loaded image SDL_FreeSurface( test );
//Quit SDL SDL_Quit();
return 0; ради интереса попробовал - не запускает...
|
|
| |
|