Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - Lerhes

Strony: 1 2 [3] 4 5 6 7 ... 25
31
Językoznawstwo / Odp: Strumienie
« dnia: Lipiec 07, 2011, 20:15:15 »
@troperos Nie przyjrzałem się temu co jest w tym kodzie i wydawało mi się, że przy logowaniu każdej wiadomości potrzebujesz wklejać te 7 linijek. Tak naprawdę wystarczy Ci tylko jedna, więc jest ok. To co napisałem na początku posta jest nieważne. Dalsza część jest jak najbardziej aktualna.
moje_wyjscie << "Teraz leci na standardowe wyjscie";

Cytuj
Konsola jest niewygodna, ale doinstalowany program już tak. No tak bo zwykłe przekierowanie wyjścia jest za łatwe i za przenośne ;)
Po pierwsze, mnie to denerwuje jak podczas uruchomienia wyskakuje mi czarna konsola, która się do kitu skaluje i jest duża, bez możliwości czyszczenia czy zablokowania logowania itp itd. Tak to mam dodatkowe wygodne okno z programu do logowania i kilka jego możliwości.

Po drugie, przekierowanie ... ale gdzie? Do pliku? Ale wtedy nie mam podglądu na bieżąco (a ja w tym przypadku polecałem to dodatkowe rozwiązanie).

Edit down: Ok, to wiadomo że możesz sobie kierować gdzie chcesz. Tylko jest pytanie, czy debuger do której chcesz kierować w ten sposób dane to wspiera? Ponadto w ten sposób nie przekierujesz łatwo do output VisualStudio. Nadal więc podtrzymuję ten trzeci sposób logowania jako warty rozpatrzenia. 
Lerhes

32
Językoznawstwo / Odp: Strumienie
« dnia: Lipiec 07, 2011, 19:36:19 »
Cytuj
#ifdef COUT
std::ostream out(std::cout.rdbuf());
#endif
#ifndef COUT
std::fstream plik("out.txt", std::ios_base::out);
std::ostream out(plik.rdbuf());
#endif
Niech będzie i define.. Tylko nie rób tego bezpośrednio w kodzie! Za każdym logowaniem kopiować tyle linijek? Matko Boska! Idę albo nie idę! Nie tylko, że niewygodne (kopiowanie i wklejanie) to jeszcze do tego gigantyczne zaciemnienie kodu. Wrzuć to oczywiście do jakiejś funkcji:
void log(std::string msg)

Wolę to napisać, niż kiedyś zobaczyć kod z takim logowaniem.

Btw: Zobacz sobie w dokumentacji microsoft, co robi taka funkcja:
::OutputDebugStringA(str);
 
Generalnie dzięki niej nie musisz w grze mieć dodatkowego niewygodnej okna konsoli (a chcesz mieć podgląd na bieżąco). A gdzie trafia wyjście? Zależy jak uruchomisz program. Jeżeli z VS to trafia  do Output w VS, jeżeli nie -> to doinstalowujesz sobie program do podglądu, na przykład ten: http://technet.microsoft.com/en-us/sysinternals/bb896647 Taka dodatkowa opcja gdzie logi mogą trafiać.
Lerhes

33
Allegro / Odp: Brak czcionki
« dnia: Czerwiec 27, 2011, 21:52:09 »
Skupmy się na tej linijce:
ALLEGRO_FONT *font;
font = al_load_ttf_font("C:\\WINDOWS\\Fonts\\times.ttf",36,0);

Jeżeli w programie dam:
#include <allegro5/allegro.h>
#include <allegro5/allegro_font.h>
#include "allegro5/allegro_ttf.h"/code]

A potem przeprowadzę inicjalizacje:
[code] ALLEGRO_DISPLAY *display = NULL;

if(!al_init()) {
fprintf(stderr, "failed to initialize allegro!\n");
return -1;
}

display = al_create_display(640, 480);
if(!display) {
fprintf(stderr, "failed to create display!\n");
return -1;
}

  al_init_font_addon();
  al_init_ttf_addon();
To kod wklejony na początku (wczytywanie czcionki działa). Warto tu podkreślić, że trzeba zainicjalizować font_addon przed tff_addon. Tutaj jest opis funkcji z PRZYKŁADEM:
http://www.allegro.cc/manual/5/al_load_ttf_font

Upewnij się także, czy ta czcionka faktycznie jest w windows\Fonts.
Lerhes

34
Inne / Odp: Od czego zacząć programowanie pod iPhone/iPad
« dnia: Czerwiec 24, 2011, 20:33:14 »
Cytuj
Zrozumiałbym gdybym musiał kupić środowisko ewentualnie nawet inny system operacyjny ale nowy sprzęt?
Trochę chęci i da radę wszystko:
http://forum.warsztat.gd/index.php?topic=21723.msg256455#msg256455

Cytuj
z tego co się orientuję we flashu od wersji CS5 możesz robić aplikacje AIR dla iOS, ale nie testowałem tego jeszcze.

Ja testowałem, akurat nie z tego narzędzia, a na Flash Builder (z wersji trial). Generalnie to nawet spoko działa (testowałem na urządzeniu) tylko jak zawsze jest jedno ale:
Działa na iphonach w wersji > 3G. Akurat ja mam 3G to płacz ;(. Mój brat ma 4G to wszystko ładnie śmiga. Dałbym linka gdzie napisali o tych ograniczeniach, ale nie mogę go coś wyszukać. Jeżeli ktoś chce się pobawić trialem Flash Buildera i przetestować od razu na swoim i-sprzęcie a nie ma konta app store, to tutaj jest małe "coś" które mu w tym pomoże:
http://www.instructables.com/id/How-to-use-Adobes-iPhone-Packager-without-an-Appl/step2/Exporting-the-App/
Oczywiście jest też emulator -> nie ma problemu w jego używaniu.
Lerhes

35
Inne / Odp: Qt Creator po polsku
« dnia: Czerwiec 24, 2011, 19:53:03 »
Zapewne dlatego, że system operacyjny masz w języku angielskim, a domyślnie QT jest w języku "systemu".

Zobacz PasekMenu -> Narzędzia -> Opcje  (od razu otworzy Ci się na liście: środowisko i po prawej zakładka ogólne) -> tu można sobie język ustawić i powinien być też od wyboru polski.

Po angielsku będzie jakoś tak:
Tools > Options > Environment > General (tab) > Language
Lerhes

36
Compo i bitwy / Odp: Warsztat Summer of Code 2011
« dnia: Czerwiec 23, 2011, 01:41:07 »
Cytuj
Wchodzę!
Jak nie oddam gry to stawiam piwo
Ja wchodzę w ten układ. Tylko jeszcze powiedz co to za miasto, żebym wiedział gdzie bilet kupić ^^

Powodzenia dla każdego uczestnika! Oby wam kawy nie zabrakło. Hmm, może sam też coś napiszę, wieczorami mam zdecydowanie za dużo luzu.
Lerhes

37
Kupię / Odp: Prosze o pomoc
« dnia: Czerwiec 13, 2011, 00:02:36 »
Troll przecież widać gołym okiem, że chodzi o program na zaliczenie, więc nie warto się zastanawiać, czy to ma sens, tylko trzeba zrobić coś co prezentuje tę technikę. rawshape dostał przydział / wybrał, że ma to być akurat gra w kości.
Zastanawiam się czy nie łamie to nowego regulaminu:
Cytuj
Nie zamieszczaj ogłoszeń z prośbą o napisanie za ciebie programu na zaliczenie do szkoły czy na studia.
chociaż z drugiej strony autor nie chce, żeby ktoś napisał za niego, tylko chce się w tej sprawie "dogadać" jak to sam ujął.

rawshape skrobnięcie czegoś w tym temacie to dla mnie nie problem, ale akurat czasu teraz mam niewiele. Dopiero w przyszły weekend mógłbym się tym zająć. Jeżeli ogłoszenie jest jeszcze aktualne, to podaj ramy czasowe jego realizacji.
Lerhes

38
Szkółka / Odp: Blad w HLSL
« dnia: Czerwiec 12, 2011, 13:24:40 »
Wpisać w google, które by Ci od razu powiedziały, że prawdopodobną przyczyną jest brak:
glewInit();

Tak btw, jeżeli dobrze wskazałem Ci źródło problemu... to NAJNOWSZY temat w kategorii opengl (w której umieściłeś swoje pytanie) zawiera odpowiedź na twój problem.... I na kilka innych, na które zapewne zaraz trafisz.

http://forum.warsztat.gd/index.php?topic=21765.0
Btw: Na shaderach się nie znam, więc to co napisałem może być niepoprawne.
Lerhes

39
OpenGL / Odp: Problem z gl.h (?)
« dnia: Czerwiec 12, 2011, 13:06:48 »
Zwróć uwagę jaki masz teraz błąd. Dostałeś tylko undefine'a przy glUseProgram -> bo takiej funkcji faktycznie nie ma (nie ma funkcji, która przyjmowała by pustą listę argumentów -> jest natomiast wersja która przyjmuje argumenty). Zwróć też uwagę, że o pozostałe funkcje np: glCreateShader już się nie rzuca (albo nie wkleiłeś tego).
Żebyś nie robił o każdy problem po drodze (a trochę ich jest) osobnego wątku, napiszę Ci jednak jak korzystać z tych shaderów.

Po pierwsze odpowiednie zrobienie glew -> wydaje się, że z tym sobie poradziłeś. Poprawnie też dodałeś plik biblioteki glew32.lib.

Więc ogólnie, najpierw nagłówki. Albo robisz je w wersji:
#define NO_SDL_GLEXT
#include <GL\glew.h>
#include <SDL_opengl.h>
#include <SDL.h>
Ten define, to po to, żeby deklaracje w SDL_opengl.h nie gryzły się z tymi z glew.h.

Albo:
#include <GL\glew.h>
#include <SDL.h>
#include <GL/gl.h>
#include <GL/glu.h>

Czyli wywalamy SDL_opengl.h i ręcznie dodajemy GL/gl.h i GL/glu.h.

Teraz przejdźmy do samych shaderów. Zamiast wczytywać kod shadera z pliku (co jest proste, ale robisz to niepoprawnie (nie wczytujesz tego kodu, tylko traktujesz nazwę pliku jak kod)) prościej (do testów) będzie po prostu wkleić ten kod ręcznie, czyli zrobić coś takiego:
const char * zrodlo = "void main(void){vec4 a = gl_Vertex;a.x = a.x * 0.5;a.y = a.y * 0.5;gl_Position = gl_ModelViewProjectionMatrix * a;} ";
To nie jest twój shader, bo on niepoprawnie był napisany (zaraz będzie jak to zweryfikować).
Następnie inicjalizujemy glut'a i tworzymy shader:
glewInit();
GLuint wynik = glCreateShader(GL_VERTEX_SHADER);
glShaderSource(wynik, 1, (const GLchar**)&zrodlo, NULL);
glCompileShader(wynik);
char buf[1001];
glGetShaderInfoLog(wynik, 1000, &zz, (GLchar*)buf );
GLint compiled;
glGetObjectParameterivARB(wynik, GL_COMPILE_STATUS, &compiled);
if (compiled){//Kompilacja shadera się udała.
}
Po glCompileShader sprawdzamy glGetShaderInfoLog czy kompilacja przebiegła poprawnie, a jeżeli nie to jakie były błędy. Będziesz je miał w buf. Wypisz go sobie na cout, albo podglądnij debuggerem. Twój shader miał błędy, więc skopiowałem skądś jakiś prosty do skalowania.
Jeżeli flaga compiled po glGetObjectParameterivARB będzie true, to shader jest ok. Teraz trzeba go podpiąć pod nasz program:

GLuint ProgramObject = glCreateProgram();
glAttachShader(ProgramObject, wynik);
glLinkProgram(ProgramObject);
GLint linked;
glGetProgramiv(ProgramObject, GL_LINK_STATUS, &linked);
if (linked)
{
// zlinkowano

glUseProgram(ProgramObject);

Zwróć uwagę, że glUseProgram nie ma wersji z pustą listą argumentów (dokumentacja). Jeszcze do tego trzeba chyba napisać GL_FRAGMENT_SHADER i też go podpiać glAttachShader -> żeby kolory były ok (tak to trójkąt jest czarny jak piekło). Ale bez tego, też shader działa. To znaczy, wydaje mi się, że działa -> bo trójkąt uległ skalowaniu. Jak mówiłem na shader'ach się nie znam.
Lerhes

40
OpenGL / Odp: Problem z gl.h (?)
« dnia: Czerwiec 11, 2011, 18:32:08 »
Jak już dałeś znajdź deklarację z poziomu C::B, to mogłeś przy okazji pooglądać, gdzie ta deklaracja się znajduje. No więc znajduje się w części wyłączonej z kompilacji, chyba że zdefiniujesz
#define GL_GLEXT_PROTOTYPES (pooglądaj sobie czasami, co zawierają pliki nagłówkowe).

Generalnie, to trudno mi pomóc Ci jakoś bardziej, bo problem z twoim kodem szybko przeradza się na problem z samymi shaderami -> na których się nie znam. Tym bardziej, że nie używam C::B.

Ale mogę Ci powiedzieć czego się dowiedziałem:
Jak dasz przed:
#include <SDL_opengl.h>
Kod:
#define GL_GLEXT_PROTOTYPES

To wtedy glCreateShader będzie zdefiniowany. Nie potrzeba Ci też:
#include <GL/gl.h>
#include <GL/glu.h>
Bo to sobie sam SDL_opengl.h dorzuca.

Następnym błędem jest sposób w jaki używasz tych funkcji -> niewłaściwy. glCreateShader nie zwraca char* tylko GLuint. Następna funkcja też jest źle użyta -> pierwszym parametrem ma być właśnie ta zwrócona liczba GLuint. Nie jestem pewien, czy poprawie tworzysz też okno SDL do używania z opengl i shaderami.

Przy kompilacji, u mnie w tym miejscu pojawił się problem -> nie wiedziałem w jakich bibliotekach zdefiniowana jest funkcja glCreateShader. W SDL-owych libach jej nie ma. (może rekompilacja SDL z odpowiednimi define by pomogła?).



W takim razie przechodzimy do sposobu 2, nie chcemy tych funkcji od shaderów z SDL, tylko dodamy je ze standardowego źródła. Przed:
#include <SDL_opengl.h>
stawiamy:
#define NO_SDL_GLEXT
Teraz nie będziemy mieli tych funkcji od shaderów. Więc pobieramy je z tego źródła:
http://glew.sourceforge.net/install.html
Dodanie nagłówków i libów nie powinno sprawić Ci problemu. Teraz u mnie nie do końca to działa, to znaczy glCreateShader wysadza się z błędem czytania z nie zainicjalizowanego wskaźnika (czytanie z adresu 0x00000000). Nie znam się na shaderach, ale podejrzewam, że gdzieś niepoprawnie są inicjalizowane. Jak będę miał znowu wolną chwilę to się przypatrzę jak one działają i jak się z nimi obsługuje.
Tutaj masz źródło do poczytania: http://osdl.sourceforge.net/main/documentation/rendering/SDL-openGL.html#loading

Edit: Działa wszystko, jeżeli doda się jeszcze magiczne glewInit();

Edit 2: Shader też jest źle napisany. Jak potrzebujesz dokładnych instrukcji co i jak zrobiłem, żeby to działało (czyli jak sobie dalej z tym nie poradzisz) to pisz.
Lerhes

41
OpenGL / Odp: Problem z gl.h (?)
« dnia: Czerwiec 10, 2011, 02:27:43 »
Jesteś miły, więc chętnie Ci pomogę. Tylko zrób o co proszę, czyli:
Cytuj
Hmm, może wrzuć gdzieś plik projektu + minimalny fragment kodu który powinien się kompilować (a nie chce ze względu na użyte funkcje)?
Albo jak nie chce Ci się wyciągać wadliwego fragmentu, to wrzuć wszystko co masz. Popatrzę i powiem Ci co się zepsuło.
Lerhes

42
Poszukuję / Odp: Zbieram zespol do stworzenia gry rpg
« dnia: Czerwiec 07, 2011, 22:43:57 »
Podbijam UP, chętnie zobaczę tego RPG'a 12 lat temu zrobionego przez amatorów. :)
Lerhes

43
Językoznawstwo / Odp: Proste gry mobilne
« dnia: Czerwiec 07, 2011, 22:29:06 »
Co do XNA i Window to się nie wypowiem (ale tak "z tego co mi się wydaje" to nie liczył bym za bardzo na tę platformę Windows Phone 7 jako jakiejś bardzo dobrej pod względem sprzedaży gier)

A w sumie proszę, tutaj trochę danych:
http://en.wikipedia.org/wiki/Usage_share_of_operating_systems
Poniżej w części mobile devices. (Hihi, śmieszny jest wykres w części: Supercomputers -> jest! W końcu linux gdzieś króluje!).
Tutaj jeden z linków:
http://www.zdnet.com/blog/cell-phones/google-android-smacks-down-windows-mobile-in-latest-gartner-data/3829

Warto też pamiętać, że Windows długo stawiał na wizerunek telefonu dla biznesu (co przekłada się na "tym gorzej" dla developera gier).

Co do iOS, dla chcącego nic trudnego (link czysto informacyjny):
http://forum.warsztat.gd/index.php?topic=21723.msg256455#msg256455
Lerhes

44
OpenGL / Odp: Problem z gl.h (?)
« dnia: Czerwiec 07, 2011, 21:51:48 »
Strzelam, żebyś mógł sobie sprawdzić: plik SDL_opengl.h nie jest częścią projektu. To znaczy, mądrzejsze IDE radzi sobie jakoś z "go to declaration" i podpowiada argumenty funkcji, ale tak naprawdę plik nie należy do projektu. To jedyne sensowne wyjaśnienie przy tego typu błędach (przynajmniej mi się tak wydaje). Gdyby to nie było C::B (a np: VS) to miałbym dla Ciebie jakieś bardziej konkretne porady. Hmm, może wrzuć gdzieś plik projektu + minimalny fragment kodu który powinien się kompilować (a nie chce ze względu na użyte funkcje)?
Lerhes

45
C++ / Odp: C4127
« dnia: Czerwiec 06, 2011, 20:37:04 »
Motyką go po głowie! (biedny KOS ).

Ja jako zagorzały zwolennik VS powiem jednak dobre słowo.
Pisząc projekty w JAVIE (było minęło) korzystałem z Eclipse i podpowiadanie składni było wręcz wyśmienite. Podkreślanie błędów i wyjaśnienia powodów ich wystąpienia też pojawiały się natychmiast. W ogóle bardzo dobrze mi się korzystało z IDE (możliwe, że to też wynik zauroczenia samym językiem (na szczęście chwilowy)).
To takie moje subiektywne zdanie, które wyrobiłem sobie 2 lata temu o Eclipse.
Lerhes

Strony: 1 2 [3] 4 5 6 7 ... 25