hxRender public release alpha 0.6.

Started by
4 comments, last by PnP Bios 19 years, 4 months ago
Ok everybody. A whole lot of you gamedever's have been helping me on and off with this project. I don't have a whole lot of documentation out for it, but I think I have provided enough for you to get a good head start on. The source is provided, so if you can't figure out something in the documents, you can always go there. As of this point, as far as I know, everything works properly. If an operation that involves returning a pointer fails, it returns NULL. If an operation that sets a value, like the screen fails, it returns -1. I hope to have a log reporting system in the next release. Some minor things that have been solved in this version are mostly internal. For instance, handling non-power-of-two images. Now there is a hardware method and a software fallback method. The only thing that I don't like about what I have right now is that you need to have glext.h in the same directory as hxrender.h, which is hopefully your /include directory. I am trying to eliminate the external dependencies as much as possible. I may just have to copy the relivant code from the glext.h into my hxRender.h. Anyways, have fun with it guys. I would like some demos to showcase on my web page. If any of you are willing to write some, let me know. I get 100 megs capcatiy, and unlimited bandwidth to my site, as far as I can tell. Hammer away, and let me know if you guys find any bugs. -hxRender PR 0.6a- I can take specific questions or error reports here.
HxRender | Cornerstone SDL TutorialsCurrently picking on: Hedos, Programmer One
Advertisement
PnP:
-------------
The first lib worked fine that you posted in the previous thread, but whenever I try to Blit with hxBlitSurface() or hxBlitSimple() with the new lib it seems to fail.

I tried out the demo program, and all I got was a white window (The caption did display the FPS however). I then used the old hxRender.lib, and everything worked fine.

Also, using VS.NET 7.1, I receive linkers errors when I try to compile the project in Release Mode. Have you tried compiling as optimized? I would probably be able to figure out what I'm doing wrong here if you don't know, but the errors seemed like linker errors that I would get when I didn't set project settings correctly, but since it compiles under Debug mode, I'm not sure what the problem is. These are the errors, if you want to see them:
Compiling...main.cppmain.cpp(73) : warning C4244: '=' : conversion from 'double' to 'float', possible loss of dataLinking...main.obj : error LNK2019: unresolved external symbol _SDL_GetTicks referenced in function "float __cdecl GetElapsedTime(void)" (?GetElapsedTime@@YAMXZ)main.obj : error LNK2019: unresolved external symbol _SDL_Quit referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol "void __cdecl hxShutdown(void)" (?hxShutdown@@YAXXZ) referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol "void __cdecl hxFreeSurface(struct _hxSurface *)" (?hxFreeSurface@@YAXPAU_hxSurface@@@Z) referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol "void __cdecl hxUpdateWindow(void)" (?hxUpdateWindow@@YAXXZ) referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol "void __cdecl hxBlitSurface(struct _hxSurface *,struct _hxBlitRect,struct _hxBlitRect,struct _hxColorSet)" (?hxBlitSurface@@YAXPAU_hxSurface@@U_hxBlitRect@@1U_hxColorSet@@@Z) referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol _SDL_GetMouseState referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol _SDL_WM_SetCaption referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol "void __cdecl hxScreenPointerTranslate(int,int)" (?hxScreenPointerTranslate@@YAXHH@Z) referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol __imp__glRotatef@16 referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol __imp__glScalef@12 referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol _SDL_PollEvent referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol "void __cdecl hxReplacePix(struct _hxSurface *,struct _hxColorSet,struct _hxColorSet)" (?hxReplacePix@@YAXPAU_hxSurface@@U_hxColorSet@@1@Z) referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol "struct _hxColorSet __cdecl hxuBuildColorSet(unsigned char,unsigned char,unsigned char,unsigned char)" (?hxuBuildColorSet@@YA?AU_hxColorSet@@EEEE@Z) referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol "struct _hxSurface * __cdecl hxLoadBMP(char *)" (?hxLoadBMP@@YAPAU_hxSurface@@PAD@Z) referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol "void __cdecl hxSetCameraView(struct _hxBlitRect)" (?hxSetCameraView@@YAXU_hxBlitRect@@@Z) referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol "void __cdecl hxSetScreenView(struct _hxBlitRect)" (?hxSetScreenView@@YAXU_hxBlitRect@@@Z) referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol "struct _hxBlitRect __cdecl hxuBuildRect(int,int,int,int)" (?hxuBuildRect@@YA?AU_hxBlitRect@@HHHH@Z) referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol _SDL_ShowCursor referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol "int __cdecl hxSetupWindow(int,int,int,bool,char *)" (?hxSetupWindow@@YAHHHH_NPAD@Z) referenced in function _SDL_mainmain.obj : error LNK2019: unresolved external symbol _SDL_Init referenced in function _SDL_mainLIBC.lib(wincrt0.obj) : error LNK2019: unresolved external symbol _WinMain@16 referenced in function _WinMainCRTStartup.\Release/hxr_demo_001.exe : fatal error LNK1120: 22 unresolved externals


If anyone else tries out the lib, can you post if you are getting the same white screen as me? The images are in the directory and I am testing for NULL, but I have had no luck in solving the problem besides using the old lib.

My System:
------------
1.4Ghz Pentium M, 512MB RAM, Intel 2 Integrated Graphics Card
Quote:Original post by wyrzy
PnP:
-------------
The first lib worked fine that you posted in the previous thread, but whenever I try to Blit with hxBlitSurface() or hxBlitSimple() with the new lib it seems to fail.

I tried out the demo program, and all I got was a white window (The caption did display the FPS however). I then used the old hxRender.lib, and everything worked fine.

Also, using VS.NET 7.1, I receive linkers errors when I try to compile the project in Release Mode. Have you tried compiling as optimized? I would probably be able to figure out what I'm doing wrong here if you don't know, but the errors seemed like linker errors that I would get when I didn't set project settings correctly, but since it compiles under Debug mode, I'm not sure what the problem is. These are the errors, if you want to see them:
*** Source Snippet Removed ***

If anyone else tries out the lib, can you post if you are getting the same white screen as me? The images are in the directory and I am testing for NULL, but I have had no luck in solving the problem besides using the old lib.

My System:
------------
1.4Ghz Pentium M, 512MB RAM, Intel 2 Integrated Graphics Card


The polygons are still being drawn, I assume. Look through the source, I use an extension to test for NPO2 hardware capabilities, that may be giving you the problem.

as for the linker errors... I always have to resetup the linker info when going from debug to release.
HxRender | Cornerstone SDL TutorialsCurrently picking on: Hedos, Programmer One
I couldn't find any errors in the source. But I rebuilt the archive anyways.
HxRender | Cornerstone SDL TutorialsCurrently picking on: Hedos, Programmer One
PnP - figured out what I was doing wrong with the linker. I'm used to including the .lib files by adding them to VC projects like source or header files, and I did not realize they were being specified under the "project settings".

And I also figured out the other error. It concerned this piece of code in hxSetupWindow():
----
extensionList = strdup((char*)glGetString(GL_EXTENSIONS));
if (strstr("GL_ARB_texture_rectangle", extensionList) == 0)
{
hxiTextureType = GL_TEXTURE_RECTANGLE_ARB;
}
else
{
hxiTextureType = GL_TEXTURE_2D;
}
------
I had to comment out the if statement at the beginning, so that hxiTextureType was set ot GL_TEXTURE_2D. I guess the glGetString method was returning GL_TEXTURE_RECTANGLE_ARB, but my hardware didn't support it (that's my only guess).

Anyways, everything I tried out works great, including the rotation and scaling functions that I had mentioned about earlier. I like the hxScreenPointerRotate() translate function as well. Looking forward to updates on the library.
I guess I should disable that then, huh?
PinguinDude... you have some splainin to do...
HxRender | Cornerstone SDL TutorialsCurrently picking on: Hedos, Programmer One

This topic is closed to new replies.

Advertisement