My next framework will be Cross-platform

<

In this period I’m working with the concept of a new framework because I decided to abandon the Unrelated Framework. If you don’t know what I’m talking about, basically the UF is a framework I coded for years and the one I used to create all the apps you can find on this web site. It has support to open sys windows, opengl, directx, manipulate images, load and save 3d models, etc., just using few functions. Anyway, because the huge amount of extern libraries and deficiencies in the serialization format, it has portability issues and sometimes serious problems with speed. I decided to code a new framework from scratch, it will be cross-platform since the beginning and to pursue this task I decided to install several virtual machines on my host, in order to support everything (or nearby). I started yet supporting Windows, MacOSX and Linux (OpenSuse, CentOS, Mandriva, Ubuntu, Fedora and all the major distros). Probably I’m gonna make only a new core with the basic functions to handle math, serialization, zip compression, etc… and I release it with a LGPL license.

GemFinder V4.0

New Features:

- You can configure the game strategy
- You can choose the timing for the moves (it resolves many glitches on different systems)
- The window size and position are saved for each state
- Improved autoplay for the latest games (es: candy crush > 200.000, midas miner > 8.000.000, bejeweled etc…)
- I fixed some memory address so it’s more stable now

Instant Download

€9.68 €4.84

BUY ONLY THE ORIGINAL AND KEEP THIS SITE ALIVE. THANKS.


How to use it:

It’s very easy. Just launch the application: then you’ll see a window (there is a GemFinder V4.0 label on the top) with inside a screen filled with a set of coloured tiles. At this point, you may run your game (on internet or pc) and overlap the GemFinder’s window to perfectly match the screen of the game (it’s important). This time you can also resize the gemfinder’s window to match the game screen as best as you can. If you have positioned correctly the gemfinder’s window you will see some circle around the gems that you need to move (in order to complete a triplet). If you press one of the automatic keys (shift, control, space or 0-numpad) the program will play the game for you. Furthermore, you can disable these auto-keys from the settings table in order to leave the gemfinder program on the background and searching for another game to try.

Read the rest of this entry »

Unrelated Engine – Deferred Rendering and Antialiasing

I tried to implement the explicit multisample antialiasing and I got good results, but it’s slow on a GeForce 9600GT. A scene of 110 fps became 45 fps with only four samples, just to point out the slow down. While I was jumping to the ceiling for the amazing image quality of a REAL antialiasing with deferred shading (not the fake crap called FXAA) I fell down to the floor after I seen the fps, what a shame.

UnrelatedEngine01

Anyway, I decided to change from a deferred shading to a deferred lighting model just to implement a good trick in order to use the classic multisample (that in my card can do pretty well also with 16 samples!) reading from the light accumulation buffer in the final step and writing the geometry to the screen with the antialiasing enabled. The result is a little weird, but you can fix it by using that crap fxaa on the light accumulation buffer which is smoother than the other image components. For example, I can use: a mipmapping or anisotropic filtering to eliminate the texture map aliasing, a FXAA to eliminate the light accumulation buffer aliasing and finally a MSAA to eliminate the geometry aliasing.

ps: I used the nanosuit model from this site: www.gfx-3d-model.com/2009/09/nanosuit-3d-model/

TSREditor – Last screenshots

TSREditor is a huge editor in the style of Blender3D  projected to create or edit the resources like textures, 3d models, sound and levels for games and other stuff.

TSREditor07_l

In spite of the large amount of work needed to reach a decent version of this software, I decided that it will be free as a part of my Unrelated Framework. In this moment I’m far from a decent beta version to release, but I can show you two nice screenshots of the program at work.

TSREditor06_l

QuickDiamond (cheat games like Diamond Dash)

QuickDiamond V1.0 is a bot studied to increase your points record with games like Diamond Dash on Facebook. If you hold the autoplay key (CONTROL or 0 numpad) the program will match the highest number of coloured blocks on the screen. It is very fast and you can make a very high score.


Instant Download

IF YOU LIKE THIS SOFTWARE, FEEL FREE TO MAKE A DONATION AND KEEP THIS SITE ALIVE. THANKS.


Make a donation to support this project!

Why QuickDiamond?

I created this cheat because there are no other valid and user-friendly alternatives on the net. I tried Diamond Dash Facile but the point record on my system was only of 400k in the best case… to be honest, I can do it by myself. However, with QuickDiamond you can do easily more than 800k (my record is of 1400k). You can set up the window to cover the game table and you can resize it if your browser matches a different size for the game. With the keyboard you can play automatically only whenever you want.

How to use it?

Launch the application. Match the yellow grid to the game tiles. If you have positioned correctly the yellow grid you will see some circle around the gems that you need to click. If you press one of the automatic keys (control or 0-numpad) the program will play the game for you.

System Requirements:

This software can run only on Windows platforms. It works at best with a 32 bit desktop, 24 bit desktop it’s not supported. A good CPU is very important to make an high hiscore.

For more informations and support, contact: gingegneri82@hotmail.it

Warnings:
I don’t take any responsibility in how you will use this software.

Unrelated Engine – Work in progress 01

This is the first “work in progress” video of my 3d engine called Unrelated Engine. Some complex animated models come from Doom 3. They were converted to a maximum of 4 weights per vertex as well as the identical vertices have been cancelled to improve the speed. The shader language was used to obtain a large amount of skinned meshes and complex materials with a reasonable speed.

The 3d models are from doom3 and from http://www.models-resource.com/, they were used only to test my engine and to make this video. The rights of these 3d models and the music are reserved by their respective authors.

Unrelated Engine – A nice beta test with Mario 64 map

I created a nice video with an engine that I’m still developing and that is part of my Unrelated Framework. It uses:

- OpenGL (to draw the graphics)
- DevIL (to import images)
- Assimp (to import 3d models)

The 3d models are from http://www.models-resource.com/, they were used only to test my engine and to make this video. The rights of these 3d models and the music are reserved by their respective authors.

GemFinder V3.0

New Features:

- Load/Save your settings for different games
- A new fast method of object recognition based on fourier analysis of tiles
- Lab colour space to find colour distance between tiles

- A simple and intuitive Learn Editor to calibrate the program for different kind of games. You can discriminate different tiles with different shapes, also in gray scale (or if they have the same shape with different colours).
- Press F9 to enable/disable the alpha blending on the entire window
- Configure the keyboard for the autoplay
- Old GemFinder and BioSolver are included to maintain the compatibility
- Configure a different number of rows and columns
- Press F9 to enable/disable the alpha blending on the entire window. You can make it invisible or transparent.

Instant Download

IF YOU LIKE THIS SOFTWARE, FEEL FREE TO MAKE A DONATION AND KEEP THIS SITE ALIVE. THANKS.


Read the rest of this entry »

Unrelated Framework – Inclusion of OpenIL/DevIL

OpenIL is a library with very powerful image loading capabilities and I decided to include it in my framework. My standard can handle several image formats like the classic 8 bit RGB or more advanced  formats like 16 bit RGB or High Dynamic Range. The images are imported from file and used maintaining the original format (if it’s possible).  For other feature check  OpenIL official web site (http://openil.sourceforge.net/)

Supports loading of:

* Windows Bitmap – .bmp
* Dr. Halo – .cut
* Multi-PCX – .dcx
* Dicom – .dicom, .dcm
* DirectDraw Surface – .dds
* OpenEXR – .exr
* Flexible Image Transport System – .fits, .fit
* Heavy Metal: FAKK 2 – .ftx
* Radiance High Dynamic – .hdr
* Macintosh icon – .icns
* Windows icon/cursor – .ico, .cur
* Interchange File Format – .iff
* Infinity Ward Image – .iwi
* Graphics Interchange Format – .gif
* Jpeg – .jpg, .jpe, .jpeg
* Jpeg 2000 – .jp2
* Interlaced Bitmap – .lbm
* Homeworld texture – .lif
* Half-Life Model – .mdl
* MPEG-1 Audio Layer 3 – .mp3
* Palette – .pal
* Kodak PhotoCD – .pcd
* ZSoft PCX – .pcx
* Softimage PIC – .pic
* Portable Network Graphics – .png
* Portable Anymap – .pbm, .pgm, .pnm, .pnm
* Alias | Wavefront – .pix
* Adobe PhotoShop – .psd
* PaintShop Pro – .psp
* Pixar – .pxr
* Raw data – .raw
* Homeworld 2 Texture – .rot
* Silicon Graphics – .sgi, .bw, .rgb, .rgba
* Creative Assembly Texture – .texture
* Truevision Targa – .tga
* Tagged Image File Format – .tif
* Gamecube Texture – .tpl
* Unreal Texture – .utx
* Quake 2 Texture – .wal
* Valve Texture Format – .vtf
* HD Photo – .wdp, .hdp
* X Pixel Map – .xpm
* Doom graphics

Supports saving of:

* Windows Bitmap – .bmp
* DirectDraw Surface – .dds
* OpenEXR – .exr
* C-style Header – .h
* Radiance High Dynamic – .hdr
* Jpeg – .jpg
* Jpeg 2000 – .jp2
* Palette – .pal
* ZSoft PCX – .pcx
* Portable Network Graphics – .png
* Portable Anymap – .pbm, .pgm, .pnm, .pnm
* Adobe PhotoShop – .psd
* Raw data – .raw
* Silicon Graphics – .sgi, .bw, .rgb, .rgba
* Truevision Targa – .tga
* Tagged Image File Format – .tif
* Valve Texture Format – .vtf

This is an example of how it works in my framework:

C_Image *newImage = new C_Image();
//load from file
newImage->ImportFormFile(”test.jpg”);
newImage->ImportFormFile(UF_FILE_JPG, “test.jpg”);
//export to file
newImage->ExportToFile(UF_FILE_HDR, “test.hdr”);
//set file format jpeg compression
newImage->SetFileFormat(UF_FileFormat_JPG(50)); //the image will be saved in my format with a jpeg quality of 50
newImage->SaveToFile(”test.img”);

Gianpaolo Ingegneri
Copyright @ 2010 – All right reserved

Unrelated Framework – Inclusion of ZLib

The Unrelated Framework got support for ziv-lempel compression of data using ZLib. The classes can be compressed in memory, loaded and saved with few rows of code and without limits. For example:

//this works only with resources like images, fonts, sounds, etc…
C_Image *newImage = new C_Image();
newImage->ImportFromFile(”test.tga”); //load image from file
newImage->SetFileFormat(UF_FileFormat_Zip(6)); //set a zip file format of 6th level
newImage->SaveToFile(”test.img”); //save the zipped resource on file, simple isn’t it?

//if you want to load…
newImage->LoadFromFile(”test.img”); //the system understands that it was zipped
newImage->SetFileFormat(NULL); //set it NULL if you don’t want the zip compression in the future

or

//this can be used for every kind of object

C_Image *newImage= new C_Image();
newImage->ImportFromFile(”test.tga”); //load image from file
C_Object_Zip *objZip = new C_Object_Zip(); //init a zip container
objZip->CompressObject(newImage, 6); //compress the image object
objZip->SaveToFile(”test.zob”); //save the zipped object on file
delete newImage;

//if you want to load…
objZip->LoadFromFile(”test.zob”); //load the zipped object from file
newImage = (C_Image *)objZip->UncompressObject(); //get the uncompressed object
delete objZip; //delete and free the zip object memory

Gianpaolo Ingegneri
Copyright @ 2010 – All right reserved

Unrelated Framework – Gui and Gui Editor

Finally I completed the GUI of my framework. The best feature is that the Gui can work in two modes: via software or using the OpenGL. It’s  very helpful for cross platform compatibility, for video games or other OpenGL purpose.

GuiEditor01

The Gui is in his first version but it has all the widgets necessary to create professional applications. An interesting feature is that you don’t need to program a single row of code to create particular interfaces: with the Gui Editor you can easily project all kind of professional interfaces and load them in your program using few functions. You don’t need to code the widgets to make them work properly.  In this way you can save hours of programming.

There is a full list of widgets implemented:

- Button
- Radio button
- CheckBox
- Form
- Frame Window
- FrameBox
- PictureBox
- ScrollBar
- Scroll space
- TextBox
- ComboBox
- Menu
- ListView
- TreeView
- ToolBar
- Image button
- Graphic Api Viewer

Of course the GUI was coded in C++, it’s object oriented and it’s an integrative part of my Unrelated Framework.

Gianpaolo Ingegneri
Copyright @ 2010 – All right reserved

Unrelated Engine – Aquarium 3D

Aquarium 3D is a little demo of an engine that I’m developing for my framework. It uses a multithreading system with a thread for the physic engine and a thread that draws the graphics on the screen: the two threads are perfectly synchronized to maintain the best fluidity possible with different framerates.

The physic engine has a static number of iterations per second, in this case 30. It can obtain a good fluidity of movements also on higher fps of the graphics card (like 75 for example) upscaling the static framerate with a series of trajectory corrections. It uses also OpenGL for graphics,GLUT to open the window and lib3ds to import the 3d studio meshes. The fish models are property of this site: http://toucan.web.infoseek.co.jp/3DCG/3ds/FishModelsE.html

Gianpaolo Ingegneri
Copyright @ 2010 – All right reserved

Ultra Fast Interpolation (via software)

In general, interpolation is a method used to construct a range of values from a set of data points. In digital image computing there are several methods of interpolation to improve the aspect of a transformed image but there is a problem: all of them are too slow to work via software in real time. Infact, we can see fast interpolations in 3d games only because they are performed via hardware by the graphic card (infact in the past it was very difficult to see an interpolation performed in real time).  However, interpolation is usefull  not only for 3d engines but they are an important part of digital image computing so there is a real need to develop a method to make it faster, expecially if you have to work with a large amount of images at the same time. For this reason I have programmed from scratch a set of  optimized algorithms of interpolation that are definite as in the past… but 100 times faster! The only limitation is that they can be used only for scale trasform but numerically they are perfect and faster at the same time.

UltraFastInterpolation

Moreover, they are useful to generate procedural images in real time, like textures, that can be used in 3d engine or in some paint softwares where you cannot have a 3d card to speed up all the stuff. In this demo you can see the high performaces of different algorithms with images of 16 bit per pixel. To make sure that my interpolation is numerically perfect, I have included also the calculus of the normal map and the bump mapping effect. With biquadratic interpolation you will obtain a still perfect scaled bump map because the normal map calculus is derivative and the biquadratic is a second order reconstruction filter.

There are the performances on my computer:

Zoom 1x (on a 512×512 image)

- Nearest: 400 fps – Bilinear: 270 fps – Biquadratic: 80 fps

Zoom 4x (on a 512×512 image)

- Nearest: 965 fps – Bilinear: 780 fps – Biquadratic: 245 fps

Zoom 16x (on a 512×512 image)

- Nearest: 1405 fps – Bilinear: 1165 fps – Biquadratic: 390 fps

As you can see, the speed of the algorithm is directly proportional to the size of the zoom, however it is very fast also at the minimum size of 1x. This condition is very useful if you have to resize images or to generate textures with a large amount of stretched layers, like perlin noise. CPU: Intel 2 QuadCore 2333 Mhz; RAM: 4 GB DDRII 800Mhz

Gianpaolo Ingegneri
Copyright @ 2010 – All right reserved

CryEngine 3!

The version 3 of CryEngine is the porting of the version 2 for the world of consoles, supporting both Playstation 3 and Xbox360 (but still compatible with the PC). Check the following video to figure out the new features.

Gloom Space – Demo version

Gianpaolo Ingegneri
Copyright @ 2010 – All right reserved

←Older