|
have you looked at jpeglib? it has a function called "write_file_header" that looks like it might help you...
|
|
|
|
|
i can't see any function called "write_file_header", or something like that... where did you find such a function?
|
|
|
|
|
|
ok, i see, but it's useless, it only write SOI marker and APP, and i write them too in the correct way, or at least in the same way that other jpeg file are written...
|
|
|
|
|
have you tried reading it with Jpeglib, to see where the problem happens?
|
|
|
|
|
no, i will try... thanks for suggestion...
|
|
|
|
|
i was thinking to start basic gaming c++.
i want to know how to start the game development.
please post a simple game in c++ if possible.
thanks!
NISHCHAY
|
|
|
|
|
Member 9138924 wrote: i was thinking to start basic gaming c++.
You would be better advised to go for XNA[^].
|
|
|
|
|
Well, a game is a LOT MORE than just programming.
(short summary as I do not have my morning coffee yet)
You need an idea what the game will be. once you get an idea, you will have to put it down on paper (virtual paper) and write down the synopsis of the game (the actual story, can be simple (tic-tac-toe), or very complex (GTA) ).
When the synopsis is done, you need to define how the game will be played (still no line of code programmed yet). This involved a lot of play-acting : RTS, FPS, RPG, Simulation, Game, ...
You will create a storyboard for the different phases of the games, the different "levels".
You will define the art work for the game (2d, 3d, cartoon, real-life, ... ) and create basic drawings (paper, photoshop, ...) of the characters, the play field.
After that, when you feel you have a good grasp of what your game will be, you can start looking at the different technologies to build the game (graphic engine, sound engine, Artificial Intelligence engine).
During that stage, you will write down (with bad ugly code) prototype displaying the different capabilities of the engine you choose, how the characters move, how the graphics will be displayed, show simple game mechanisme, display the (ill)logic of the AI, ...
Once that is done, then you can start to write some real nice code.
anyway, a simple game (not compiled, not tested)
bool found = false;
while (!found)
{
cout << "guess a number." << endl;
int value;
cin >> value;
srand ( time(NULL) );
if ( value == rand() )
{
cout << "you found it";
found = true;
}
}
Watched code never compiles.
|
|
|
|
|
LOL! A number guessing game was the only simple example I could think of.
|
|
|
|
|
Open-GL is a nice library for people who want to do basic gaming in c++. I mean the library is good to start with line drawing and in the mean time you can end in rich particle system that gives the effect of fog, blast, burn etc
|
|
|
|
|
i want to make a line in c++
and want to know how to do so
and which header files i should include and the complete code.
NISHCHAY
|
|
|
|
|
Okay sure, no problem.
You need to create a windowed or a dialog app, handle the WM_PAINT message, then use the MoveToEx[^] and LineTo[^] functions.
You should #include <windows.h>
There's a million examples already around. You can google for and find them yourself with very little effort.
|
|
|
|
|
Cant i make it by using graphics and pixels if anyone has the idea please tell
|
|
|
|
|
Could you be more specific please?
I'm not using sound, nor is the line drawn using Vegemite-sandwiches!
The line is drawn using pixels and (obviously) graphics!
If you'd like to use graphics.h (Are you using TurboC?) and would like to calculate the position of the individual pixels themselves, you should look up lineDDA or Bresenham or if you'd like it anti-aliased, the Wu Anti-Aliasing algorithm.
There's a million examples already out there. As a programmer, one of your fundamental skills (and tasks) is that of researching!
Go on, have a look it's not that hard. - If you want to code the line function yourself, you should be prepared to read some older code, since for the most part this is a problem that is solved using pre-existing functions, like the ones I linked you to. Functions that will work anywhere, regardless of the BitDepth or resolution of the display monitor. They are also optimized, that is to say they DO-NOT call Pixel(x,y,col) for each point in the line - they'll be a squillion times faster than anything you write yourself - many will also be seamlessly hardware-accelerated.
|
|
|
|
|
when i am using the dda algorithm it shows some errors like setpixel() should have a prototype
how to over come that.
|
|
|
|
|
|
it shows that the setpixel() function used to set pixel(point) for drawing the line, should have prototype.
|
|
|
|
|
What are the exact errors?
|
|
|
|
|
I asked you to provide the exact errors. You did not do so.
I will not help further.
This code will draw 2 lines in a window. You need to link to wingdi32.lib (wingdi32.a if using gcc)
#include <windows.h>
LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);
char szClassName[ ] = "CodeBlocksWindowsApp";
int WINAPI WinMain (HINSTANCE hThisInstance,
HINSTANCE hPrevInstance,
LPSTR lpszArgument,
int nCmdShow)
{
HWND hwnd;
MSG messages;
WNDCLASSEX wincl;
wincl.hInstance = hThisInstance;
wincl.lpszClassName = szClassName;
wincl.lpfnWndProc = WindowProcedure;
wincl.style = CS_DBLCLKS;
wincl.cbSize = sizeof (WNDCLASSEX);
wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
wincl.lpszMenuName = NULL;
wincl.cbClsExtra = 0;
wincl.cbWndExtra = 0;
wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND;
if (!RegisterClassEx (&wincl))
return 0;
hwnd = CreateWindowEx (
0,
szClassName,
"Code::Blocks Template Windows App",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
544,
375,
HWND_DESKTOP,
NULL,
hThisInstance,
NULL
);
ShowWindow (hwnd, nCmdShow);
while (GetMessage (&messages, NULL, 0, 0))
{
TranslateMessage(&messages);
DispatchMessage(&messages);
}
return messages.wParam;
}
LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
HDC winHDC;
switch (message)
{
case WM_DESTROY:
PostQuitMessage (0);
break;
case WM_PAINT:
winHDC = GetDC(hwnd);
MoveToEx(winHDC, 0, 0, NULL);
LineTo(winHDC, 100, 100);
MoveToEx(winHDC, 0,100, NULL);
LineTo(winHDC, 100, 0);
ReleaseDC(hwnd, winHDC);
return 0;
default:
return DefWindowProc (hwnd, message, wParam, lParam);
}
return 0;
}
modified 20-Jun-12 5:20am.
|
|
|
|
|
Hard to say when you are so vague.
What are the exact errors?
[EDIT:] And the lines of code that cause them
|
|
|
|
|
For simple, 2D graphics (in Windows), look for tutorials on using the Windows GDI[^].
|
|
|
|
|
I have a basic MFC dialog based app so I am definitely using MFC. The official documentation says, "Non-MFC projects can select Use Standard Windows Libraries to link to various Win32 libraries that are included when you use MFC".
The implication is that you could not build / link / run an MFC application if you chose this compiler option, right? However, you can build and run an MFC application with this option.
What I want to know is, what is really going on or why does an MFC application work? If I use this option can I be free of MFC DLL dependencies? I have spent some time googling this, but I can't find any answers to this question.
|
|
|
|
|
Hi Deep,
Your understanding is almost correct. From visual studio project settings we can select 3 options "Use Standard Windows Libraries", "Use MFC in a Static Library"and "Use MFC in a Shared DLL".
The first one[Use Standard Windows Libraries] is used when we had an application or a dll that did not require MFC class or framework support. For example a console application or pure c++ libraries or a win32 application or a C application etc.
The second and third options are used where we need MFC class or framework support e.g: MFC dialog application, MFC SDI or MDI application or applications using CString etc.
The difference between "Use MFC in a Static Library"and "Use MFC in a Shared DLL" is given below in simple sentence.
If you need to run your application in another computer that did not had a Visual Studio run time, you should choose static library other wise use shared dll. And you can find more difference between these two from net
http://msdn.microsoft.com/en-us/library/1ez7dh12(v=vs.80).aspx[^]
http://stackoverflow.com/questions/2652679/regular-dll-using-mfc-shared-vs-mfc-statically-linked[^]
|
|
|
|
|
If my understanding is correct, then why can I build and run an MFC based Dialog application using the standard windows libraries? I have actually set this application to use the standard libraries and hit build and run and it does.
So why does this work?
|
|
|
|
|