stupid idea

Discuss anything not covered by any of the other categories.
leileilol
Posts: 2783
Joined: Fri Oct 15, 2004 3:23 am

Re: stupid idea

Post by leileilol »

IMHO a QC vm for id Tech3 is more feasible than it is for id Tech 4. The network code in that is relatively awesome and you don't have to depend on some artist knocking out required normalmapped 3d artwork at a snail's pace.
Last edited by leileilol on Sat Jun 28, 2014 12:47 am, edited 1 time in total.
i should not be here
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: stupid idea

Post by revelator »

I'm also not sure if Doom 3 does lightmaps at all
It does MH had a cvar in his project for showing just the lightmaps :) i could add it to my revelation project as a debug tool for devs.

It will be quite different then quakec though to make something like quake in idtech4 or even 5 for that matter on that we agree ;)
Productivity is a state of mind.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: stupid idea

Post by revelator »

Btw basic C++ is not hard to get around in you can use pretty much the same code as in C,
but when it comes to creating templates and new class types you will enter a world of hurt the likes which you have newer seen :lol:
I started in basic back in the days went over to C not to hard but took me some time to find around in and then i hit idtech4 and im still fumbling around because the logic i used in C does not apply to C++ in the same way :)
C++ is a very powerfull language because if you are missing a specific functionality you can simply make a new template and then the whole engine can use it.
It also has a lot of pitfalls one has to be vary off for instance casting in C++ does not react the same way as in C (well unless you cheapshot it and use C casting) and sometimes you run into code that seems to do nothing at all so you remove it just to discover that its a stub for a similar named function somewhere entirely different in the engine and you just broke the code.

Still its a good learning experience.
Productivity is a state of mind.
mankrip
Posts: 924
Joined: Fri Jul 04, 2008 3:02 am

Re: stupid idea

Post by mankrip »

toneddu2000 wrote:
Compiling C code isn't magically more difficult than compiling QC code. A compiler is involved in both cases, only one pops out a .dll while the other pops out a .dat.
I completely disagree. I compiled FTE, DP, QuakeSpasm, Doom 3 and other bunch of engines and the task is hard, really hard if you do not know very well the engine and the OS which you're compiling on. Quakec is: ./fteqcc.bin progs.src - done.
Exactly. And to explain it further: Configuring makefiles and project files can be a pain, specially if the makefiles relies on cascaded configurations from elsewhere. In QuakeC, all you need is to define the input and output files in progs.src.

Also, QC optimizations are universal, but C/C++ optimizations depends on the target OS and hardware.
Ph'nglui mglw'nafh mankrip Hell's end wgah'nagl fhtagn.
==-=-=-=-=-=-=-=-=-=-==
Dev blog / Twitter / YouTube
ceriux
Posts: 2230
Joined: Sat Sep 06, 2008 3:30 pm
Location: Indiana, USA

Re: stupid idea

Post by ceriux »

the main reason id like to see QC in more engines is because i have problems learning scripting/programming languages... im no programmer. the only two languages iv been able to really grasp has been QC and the scripting system for RPGmaker engines. both of which im no pro with.

but the thing is QC is so easy to learn its very clear and structured.
iv tried to learn Java , no go. i can do some basic things but i never get very far with it.

iv looked at unity it was just extremely confusing.

i didnt know d3 has a scripting language, so i havent looked at it and i have no idea how complex it is, or isnt.

iv also looked at trying to mod unreal, but i could never find much information on it.

i would like to see a whole new engine just able to run QC and maybe CSQC but a new engine that already exists would be cool too.
Spike
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK
Contact:

Re: stupid idea

Post by Spike »

C often has lots of dependancies, lots of paths, lots of different tools that all need to be installed and configured separately.
Then you have windows users using different versions of those tools (msvc2003,2005,2008,2010 etc), different profiles (enterprise, professional, express), or completely different toolchains (msvc, mingw, cygwin, dev-c++, eclipse - yeah, okay, most of these use mingw but they're all configured differently) etc.
And C++ generally has far more dependancies, from what I've seen.

at least on linux, its just: apt-get install dep1 dep2 dep 3 && ./configure && make install
just make sure your .so symbols don't get merged with other symbols in a really awkward way...

QuakeC is self contained. There's no libraries, there's no dependancies, the compiler used is small enough to just be thrown into the source zip. Double-click the compiler, then run your engine exe. done.


That said, perhaps people find QC so simple because the base code is fairly small yet sufficiently complete to produce something worthwhile, such that its easy to find all the right places to hack it to add other things too?
Writing QC from scratch is a pain, as much as writing java from scratch can be.
With quake, you already have the rendering code provided by the engine, just spawn an entity with the right model and you can instantly see the results.

imho, quakec's convienience comes from the fact that the compilers are small and self contained, rather than the language itself.
toneddu2000
Posts: 1395
Joined: Tue Feb 24, 2009 4:39 pm
Location: Italy

Re: stupid idea

Post by toneddu2000 »

LITTLE OFFTOPIC JUST FOR CERIUX
I would suggest you to give Unity another chance. Its editor is awful compared to UDK (grid is painful and inaccurate but prefab structure is quite good), but c# is very easy to learn, if you start step by step. The object oriented structure of new languages like unity and udk can seem a little frightening at first, but once you take the real world where you live in, in oo programming world, is much easier than you think!

see this. And don't forget the Asset Store, the wiki and the wonderful community Unity has. It's really helpful when you get stuck.
Below some extensions I suggest you to buy:
NGUI
ProGrids
Prototype or Probuilder 2 (Probuilder 2 gives you to create maps like in Quake3 Radiant)
PlayMaker
UFPS (for FPS game style)

Or Just buy 19.00 $ per month and try Unreal Engine 4 with Blueprint Visual Scripting. People say it's awesome (I still didn't try it)!
/CLOSE OFFTOPIC - if you're in doubt, just pm me and I'll give you all the link I found useful in this Unity dev year! :D
Spike wrote: imho, quakec's convienience comes from the fact that the compilers are small and self contained, rather than the language itself.
Yeah, completely agree. If it was OO for me QuakeC would be perfect! :D
Meadow Fun!! - my first commercial game, made with FTEQW game engine
goldenboy
Posts: 924
Joined: Fri Sep 05, 2008 11:04 pm
Location: Kiel
Contact:

Re: stupid idea

Post by goldenboy »

Eh, I guess I just can't follow some of the arguments in this thread. I still think the idea that making a game with QC is much, much easier than with C++ is a fallacy. People here might come to that conclusion because they simply know QC better.

I have compiled the Doom 3 gamecode and a bunch of others, I didn't find it terribly hard. But then I have been using Linux for almost 15 years, including Gentoo where you compile the entire OS, and I've modded games written in C and C++ enough to be familiar with compiling stuff like that. And like Spike hints at, compiling things under Linux might be more of a normal thing to do than under Windows. GCC and the make system are usually onboard with any Linux system worth its malt. That means you will have a working C/C++ compiler by default and using it is just as simple as FTEQCC - you do just enter a console command, either a line starting with "gcc" or a line starting with "make". I still think that is not noticeably more difficult than entering a line that starts with "./fteqcc".

It is true that some makefiles are confuddled. Well, then you'd have to invest the time to learn the basics of makefiles. It's not rocket science, it is all documented. But a lot of software has makefiles that just work (just like Quake has its progs.src that just works) and compiling the program is as easy as typing "make" (FTE and Darkplaces engines are compiled like this under Linux.)

I really do think it is simply a result of a different perspective. Someone who learns C (/++) before learning QC, like I did, might not find one so much more beginner friendly than the other. And the fact that compiling on Windows makes you jump through hoops may be part of the problem.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: stupid idea

Post by revelator »

True for a dev linux is really nice :) it has most tools as part of the system (probably because a good part of drivers need to be recompiled against the different kernels in linux).
Productivity is a state of mind.
goldenboy
Posts: 924
Joined: Fri Sep 05, 2008 11:04 pm
Location: Kiel
Contact:

Re: stupid idea

Post by goldenboy »

I think Linux comes with the tools by default because it basically requires users to add their own code - it would die if not the community kept working on it.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: stupid idea

Post by revelator »

That to ofc :)
Productivity is a state of mind.
Error
InsideQC Staff
Posts: 865
Joined: Fri Nov 05, 2004 5:15 am
Location: VA, USA
Contact:

Re: stupid idea

Post by Error »

Someone wrote a qcvm.
Post Reply