Posted: Tue Dec 05, 2006 10:52 pm Post subject:
TS Open
Subject description: trying to recreate the TS and RA2 engine
Currently i'm working to recreate the tiberian sun/red alert 2 engine.
Once i have all basic functionality in, and a working game engine, i will release the source code, and instructions on how to compile it.
You may leave any wishes or ideas here for me to implement.
Do not however expect me to fullfill every one of them.
_________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. Last edited by Judeau on Sun Dec 10, 2006 12:18 am; edited 3 times in total QUICK_EDIT
I also planned on writing these some day...
nice work!
so, I guess, you recode the game?
d'oh, why oh why must you reveal it so soon -_-'
but yes, i am, working on improving the voxel engine some more atm
EDIT : specularity added, and support for only rerendering voxels when it is needed*basically the voxel will only be rerendered when it turns etc* _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. Last edited by Judeau on Thu Dec 07, 2006 1:40 pm; edited 1 time in total QUICK_EDIT
if you work alone on a project, you know what you're doing.
there are many different coding styles so a one-man-project is always easier to overlook.
on the other hand, of course, it's much more work then
@ Judeau:
if you're really planning to rewrite the game, I might be able to help at several points... I actually had the same idea, recoding it in SDL (RA2 instead of TS, but there's no big difference there) QUICK_EDIT
i plan to make this engine be able to handle both games, but it will be mainly aimed at ts.
and pad, my msn is jasper.vaneck@gmail.com , i'd appreciate any help i can get, or any suggestions you might have.
and here, is a newer version taking far less RAM, as well as being a lot more efficient, as well as having specularity and a rendering bug fix
EDIT : and i of course plan on making it open-source, once it actually works and is mostly done _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. Last edited by Judeau on Sun Dec 10, 2006 12:20 am; edited 1 time in total QUICK_EDIT
RA2 and TS handling:
Perhaps you could make tile modes
1-TS size made for 800*600
2-RA2 size made for 1024*768
3-new size made for 1280*960/1280*1024 (simply bigger)
that would allow for higher resolution/more beautiful graphics (though that would need larger voxels... is there any limit on their size?) _________________ Time will tell...
Sooner or later...
Time will tell... QUICK_EDIT
i'm remaking the ts and ra2 engines
so, no that won't be 3d, seeing as i DO want to use all the original files etc.
voxel files are limited to 256x256x256 if i recall correctly, even the TSTW mammoth doesn't go past 128, so, i've made the limit of a voxel picture being displayed 128x128, i might make that larger mind you, once i work on it a bit more.
and yes, custom screen sizes will be FULLY supported, it will also be cross-platform.
custom tile sizes will also be programmed in, i basically want to make most of the stuff customizeable.
i MIGHT however make a 3d rts engine once i am done with this and a x-com remake _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. QUICK_EDIT
If you want to make a 3D engine later, join Chrono Monkey Productions
Also, there's need for voxel limit increasing only if you make these higher res tiles (best would be if they would be fully configurable, so modder can easily specialize for 1600*1200, though that would be modding suicide)
or if you make better collision detection
(big voxels passing trough other big voxels don't look good at all) _________________ Time will tell...
Sooner or later...
Time will tell... QUICK_EDIT
Of course take any of these advices/wishes as first gotta make something working, then gotta improve it, since you can expect tons of wishes now that you started this... _________________ Time will tell...
Sooner or later...
Time will tell... QUICK_EDIT
I not want to offend, but it is nothing good now
showing one voxel and one shp is nothing at all
try to draw 1000 SHPs
also a lot of libraries, in which only 10% of code are used.
however, your voxel load function is too slow
However I can help you, too
Good luck to you! _________________ ARM forever - x86 sucks QUICK_EDIT
I think he means a real remake (making the game-engine again and etc.), not a mod/TC for a RA2/YR.
I saw an another topic about somekind of a RTS maker. So many people are trying to make something. Good luck with this project. I'm sure that someone can help you if you're looking for a help. QUICK_EDIT
I not want to offend, but it is nothing good now
showing one voxel and one shp is nothing at all
try to draw 1000 SHPs
also a lot of libraries, in which only 10% of code are used.
however, your voxel load function is too slow
However I can help you, too
Good luck to you!
no problem, you should know however that i'm making sure the code is fast, i'm merely converting the voxel data into an internal format, so it would take just a few milliseconds longer.
obviously these are just to show i can load and display the shps just fine, i'm using standard blitting, and as far as i know, you won't find a way to show em any faster.
and i do intend to use most of the library functions, of course i haven't started work on networking yet.
and thanks , if you can help me just contact me. _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. QUICK_EDIT
Make sure CNCVK doesn't turn it Windows only if it isn't already (I guess it isn't) _________________ Time will tell...
Sooner or later...
Time will tell... QUICK_EDIT
it indeed isn't windows only _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. QUICK_EDIT
no problem, you should know however that i'm making sure the code is fast, i'm merely converting the voxel data into an internal format, so it would take just a few milliseconds longer.
you use many fread s
which is rather slow, better load file to memory
Quote:
it indeed isn't windows only
no problems. but it can be more slow _________________ ARM forever - x86 sucks QUICK_EDIT
ah thanks, i'll try to load the file into memory in one go, instead of streaming it.
and sure it can be slower, but i think it rather important this one is OS independant _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. QUICK_EDIT
Ah.. you can now recreate internet games! More players? BTW, is TS hosted by the servers or the players.. if players then maybe it should be servers, that way surely there will be less errors and things, though the errors are more RA2 anyway.. QUICK_EDIT
what you said about loading files is very interesting to me because i've been thinking of doing things like that to speed up 3ds2vxl but i don't know much about how it works and which way is better for different things.
btw i think a new way of loading for games is to constantly load very slowly for a long time in small pieces while the game is running to avoid causing noticeable pauses. so i'm wondering if your methods would be compatible with this new loading philosophy. QUICK_EDIT
and sure it can be slower, but i think it rather important this one is OS independant
I have no contradictions with this
Quote:
what you said about loading files is very interesting to me because i've been thinking of doing things like that to speed up 3ds2vxl but i don't know much about how it works and which way is better for different things.
It's very fast, but have some problems
if file is wrong, offset can be more the file length,
And you have Access Violation error or reboot
one of solutions is to use try...catch or checking each offset _________________ ARM forever - x86 sucks QUICK_EDIT
i've finally freed up some time to work on this, basically a stress test, seeing as 50 mammoths are being rendered, which, hopefully, won't happen often in-game, i still am trying to speed it up, and i'll succeed , since the last version, this is about 5 times more efficient, post your cpu usage statistics and FPS rates(number left of mammoth horde)
i hope to speed it up some more though, 50 mammoths is a lot of large voxels with many moving parts, *tests with 100 apcs*
Joined: 26 Nov 2002 Location: Algae Colony On Mars
Posted: Thu Apr 12, 2007 10:38 pm Post subject:
I got a lovely 6fps and it tends to use up about 90% of my CPU (Pentium-M, 1.5GHz ).
I also noticed the SDL libraries, does this mean compatibility with other operating systems? If the source has a makefile (or you can compile a Linux version) then I can give it a go on Linux and see how it fares there. _________________
Quote:
This is sexier than what this forum was supposed to tolerate. - Banshee
I got a lovely 6fps and it tends to use up about 90% of my CPU (Pentium-M, 1.5GHz ).
I also noticed the SDL libraries, does this mean compatibility with other operating systems? If the source has a makefile (or you can compile a Linux version) then I can give it a go on Linux and see how it fares there.
indeed, cross-platform, at least, meant to be
and, i'm still hoping to improve it's speed, though i could always simply make the voxel refresh rate slower, i prefer smooth rotations though _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. QUICK_EDIT
Are you using software rendering? Perhaps making use of hardware would increase the framerate.
heh, i'm already working on that, seeing as i already can use opengl, it should be a piece of cake.
the only negative side of this, is that a 3d card will be needed, and, probably a minimal decrease in image quality _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. QUICK_EDIT
heh, i'm already working on that, seeing as i already can use opengl, it should be a piece of cake.
the only negative side of this, is that a 3d card will be needed, and, probably a minimal decrease in image quality
So you're using OpenGL to write this renderer? Any other languages? What software, and how much experience do you have in this area? Any classes or just patiently reading tutorials and learning from them every now and then?
Will you go OpenGL all the way or are there exeptional parts where you must switch to something else? I'm not experienced in programming so I'm propably gonna get laughed at for this, my apologies for any trouble.
heh, i'm already working on that, seeing as i already can use opengl, it should be a piece of cake.
the only negative side of this, is that a 3d card will be needed, and, probably a minimal decrease in image quality
So you're using OpenGL to write this renderer? Any other languages? What software, and how much experience do you have in this area? Any classes or just patiently reading tutorials and learning from them every now and then?
Will you go OpenGL all the way or are there exeptional parts where you must switch to something else? I'm not experienced in programming so I'm propably gonna get laughed at for this, my apologies for any trouble.
Regards,
/Nubilus
first, of all, opengl is a graphics library, not a programming language
and, after having made a new voxel engine based upon opengl, i can safely say, i won't be using opengl
now, normally, i'd say opengl is superior for most things, however, it has a few problems, for one, all textures need to be pre-loaded, and editing those on the fly, is an annoyance at best.
it seems it's not feasible to use opengl for voxel rendering either, seeing as each voxel is basically a cube with 6 quads to compose it, so, you'll be using 6xvoxels you wish to display, faces, which quickly becomes a tad too much.
as a programming language i'm using ANSI C
i'm also using SDL to supply some nice wrapper functions for many things, like sound, graphics and input
the software i'm using to code this, is a simple text editor
i compile with mingw + msys using the GCC compiler
and, i've learned what i know from simply doing tutorials, and looking at and modifying existing code by other authors, i started that out with quake 3 modding, but you learn the most, by simply trying stuff, and searching for relevant information via google when you have trouble doing it
i'm currently a software programmer for www.cea-int.com, with no formal education in the programming field _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. QUICK_EDIT
Using GL_POINS you can have pretty good voxels (with normals, using vertex arrays or VBOs), and if you want to be able to zoom on them without having gaps (altough TS voxels in TS distance will look ok, as well as RA2 ones), you can use I dont remember which function that can set point size (either globally, or for each voxel depending on it's distance if you want 3D, which I doubt.) This is way faster than rendering voxels as cubes, and gives actually more true voxel effect.
I only did this without VBO's, and I had slowdown with big 256256256 voxels, but using VBO's it might be pretty fast.
Not sure if faster than SW rasterization, though. You might try it. (and,btw, what about another voxel format with more bit colours, it shouldn't be too hard, altough would increase filesize. If combined with accelerated POINT voxels, this would have no slowdown against the standard pallette voxels (probably even no slowdown in SW rasterization, no idea how you coded it))
And, I think you should use OpenGL at least for stuff like blending. _________________ Time will tell...
Sooner or later...
Time will tell... QUICK_EDIT
Using GL_POINS you can have pretty good voxels (with normals, using vertex arrays or VBOs), and if you want to be able to zoom on them without having gaps (altough TS voxels in TS distance will look ok, as well as RA2 ones), you can use I dont remember which function that can set point size (either globally, or for each voxel depending on it's distance if you want 3D, which I doubt.) This is way faster than rendering voxels as cubes, and gives actually more true voxel effect.
I only did this without VBO's, and I had slowdown with big 256256256 voxels, but using VBO's it might be pretty fast.
Not sure if faster than SW rasterization, though. You might try it. (and,btw, what about another voxel format with more bit colours, it shouldn't be too hard, altough would increase filesize. If combined with accelerated POINT voxels, this would have no slowdown against the standard pallette voxels (probably even no slowdown in SW rasterization, no idea how you coded it))
And, I think you should use OpenGL at least for stuff like blending.
perhaps, but TS doesn't use such a large amount of transparent stuff( well, besides stealth )
and additive blending is rather easily done _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. QUICK_EDIT
Yes, I know. But I think it should be still faster/more extensible/allowing for better graphics than TS to use OpenGL even if your engine is just 2D shitload of quads. And you could really plan for future using that. But if you're getting faster results with SW than GL, then keep it, or maybe even make your engine extensible to allow for new renderers later.
(If you are planning to make this OS)
That way you could have support for stuff like shaders later. (which can make the thing look better even if it's 2D) _________________ Time will tell...
Sooner or later...
Time will tell... QUICK_EDIT
greatly enhanced version, source included _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. QUICK_EDIT
That is definitely a very nicely rendered Mammoth Mk II voxel. I tried putting in a few of my voxels with the hmecw filenames. One was animated, tsopen crashed. The other was not animated, and all it rendered was a single pixel.
Did you write your code to render the MK2 specifically? _________________ QUICK_EDIT
Well, you really nailed it this time. The framerate is smooth as silk. Is it hardware rendered?
nope, completely software
and icyson, can you upload debug.txt, and the voxels themselves ?
of course, you mustn't forget to replace the hva as well _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. QUICK_EDIT
Joined: 14 Feb 2006 Location: Flying into hostile territory
Posted: Thu Apr 19, 2007 2:20 am Post subject:
Suggestion:
Multi mod support by having mods within separate directories within the main one and activate it using the command line parameter -ModNameHere _________________ QUICK_EDIT
Joined: 22 Aug 2006 Location: somewhere south of the north pole
Posted: Thu Apr 19, 2007 11:33 am Post subject:
This sounds great! If this comes to the qualety of TS or RA2, I will tell everyone I know about this!
Kepp up the GREAT work! _________________ This is a signature QUICK_EDIT
the first is due to it's voxel scale, tsopen doesn't support different-scaled voxels, for now, of course _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. QUICK_EDIT
Oh i see... but well, i have few more questions.
It seems for now tsopen doent support shadows casted by voxels. Will it be fixed? If it will be, is it possible to have shadow casted from all sections of voxel? And from "turret" and "barrels"? Will shadow from "barrel" and "turret" be applied also on "hull"?
Shadow casted on ramps, will also become tilted? _________________ Gangster is a Project Perfect Wuj (c)Aro QUICK_EDIT
Oh i see... but well, i have few more questions.
It seems for now tsopen doent support shadows casted by voxels. Will it be fixed? If it will be, is it possible to have shadow casted from all sections of voxel? And from "turret" and "barrels"? Will shadow from "barrel" and "turret" be applied also on "hull"?
Shadow casted on ramps, will also become tilted?
at first he should allow to load any voxel and draw it with normal speed.
the shadows isn't important now in my opinion. _________________ ARM forever - x86 sucks QUICK_EDIT
Oh i see... but well, i have few more questions.
It seems for now tsopen doent support shadows casted by voxels. Will it be fixed? If it will be, is it possible to have shadow casted from all sections of voxel? And from "turret" and "barrels"? Will shadow from "barrel" and "turret" be applied also on "hull"?
Shadow casted on ramps, will also become tilted?
i'll say this simply, all voxels will cast shadows, however, there will be no casting of shadows from voxel to voxel
i am unsure about ramps and cliffs, probably not _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. QUICK_EDIT
For that to happen, I think the shadows would need to be generated by the engine. Even it can look nice, it always causes the game to lag for me...
Aside from that, if Judeau would be able to let the engine generate the shadows of the voxels, this still wouldn't work for SHP's.
Maybe there's a way to let it calculate the shadows (casted by either HVAs or SHPs) on ramps differently... So on the ramp, certain pixels of the shadow of the unit would be displayed higher, lower, further to the left or further to the right, depending on the position of the unit and the position of certain pixels of the shadow on the ramp (and of course the direction of the ramp).
Also Known As: evanb90 Joined: 20 Feb 2005 Location: o kawaii koto
Posted: Fri Apr 20, 2007 7:31 pm Post subject:
I just tested this new version out, and I must say, this is quite impressive. It renders much faster than the old version. _________________ YR modder/artist, DOOM mapper, aka evanb90
Project Lead Developer, New-Star Strike (2014-)
Former Project Lead DeveloperStar Strike (2005-2012), Z-Mod (2006-2007), RA1.5 (2008-2013), The Cold War (2006-2007) QUICK_EDIT
For that to happen, I think the shadows would need to be generated by the engine. Even it can look nice, it always causes the game to lag for me...
Aside from that, if Judeau would be able to let the engine generate the shadows of the voxels, this still wouldn't work for SHP's.
Maybe there's a way to let it calculate the shadows (casted by either HVAs or SHPs) on ramps differently... So on the ramp, certain pixels of the shadow of the unit would be displayed higher, lower, further to the left or further to the right, depending on the position of the unit and the position of certain pixels of the shadow on the ramp (and of course the direction of the ramp).
Just brainstorming
using shearing, a similar effect could be achieved, however, this of course, would cost more CPU cycles _________________ Micro TS
Portable, no campaign, movies or music, just the engine and needed resources for skirmish and lan. QUICK_EDIT
Much faster than the previous one, but I still guess it'll need speedup (20+ FPS on AMD64 3200+/512 MB RAM)
Does it run much slower on weaker machine or is there not much difference? _________________ Time will tell...
Sooner or later...
Time will tell... QUICK_EDIT
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum