3D Engine

3D Engine

Re: 3D Engine Posted by Damic on Thu Jun 23rd 2005 at 2:42pm
Damic
113 posts
Posted 2005-06-23 2:42pm
Damic
member
113 posts 71 snarkmarks Registered: Dec 22nd 2004 Occupation: Machine operator Location: belgium
mmh I was bored and needed todo something so I've creaded my first simple 3d Engine.

Currently its full rendered on Direct Draw :| maybe ill change that to Direct 3D (more easyer options)

Example: http://home.scarlet.be/~guido456/cd-pc/tmp/enginetest.rar (I get +4000FPS) :smile:

What do you guys think of it :biggrin:
Thx in advantage
Re: 3D Engine Posted by Madedog on Thu Jun 23rd 2005 at 2:53pm
Madedog
487 posts
Posted 2005-06-23 2:53pm
Madedog
member
487 posts 128 snarkmarks Registered: Jan 5th 2005 Occupation: Level Designer Location: Estonia
Hmm... I get 700 fps :razz:

But hey - it's cool that you made something on your own. Hopefully we can see something cool made on it :smile:
HL2 tutorials 'n' stuff: http://madedog.pri.ee
217.159.236.34:27050 - CSS Server - Clean | koffer.ee
Re: 3D Engine Posted by Damic on Thu Jun 23rd 2005 at 3:28pm
Damic
113 posts
Posted 2005-06-23 3:28pm
Damic
member
113 posts 71 snarkmarks Registered: Dec 22nd 2004 Occupation: Machine operator Location: belgium
I gona crete a Reaction Tester on it :biggrin:

Car (hud) + (static)traffic light + "moving" road :biggrin:
Thx in advantage
Re: 3D Engine Posted by Dark_Kilauea on Thu Jun 23rd 2005 at 6:43pm
Dark_Kilauea
629 posts
Posted 2005-06-23 6:43pm
629 posts 123 snarkmarks Registered: Apr 15th 2005 Occupation: Fast Food Location: USA
AAHHHHH!! The horror! Your using Direct X!

Here's a tip, you'll be better off using OpenGL. Here are some
reasons. It is run native in most, if not all, graphics cards.
This means that it will run faster. It is very easy to port to
other os's, because Macs and Linux do not have Direct X support.
You can do everything in OpenGL as you can do in Direct X, if not more.

Still, I'm glad to see that you've decided to try something new. Keep it up, and remember, Direct X is not your friend.

Until later...
Dark_Kilauea
DVS Administration
http://www.dvstudio-production.com/
Re: 3D Engine Posted by Damic on Thu Jun 23rd 2005 at 6:49pm
Damic
113 posts
Posted 2005-06-23 6:49pm
Damic
member
113 posts 71 snarkmarks Registered: Dec 22nd 2004 Occupation: Machine operator Location: belgium
Lol, If you find a tutorial of opengl for VB6, past the link here, until then I use DX :sad:

Sorry dude :sad: i'm not a C++'er :sad:
Thx in advantage
Re: 3D Engine Posted by Dark_Kilauea on Thu Jun 23rd 2005 at 6:57pm
Dark_Kilauea
629 posts
Posted 2005-06-23 6:57pm
629 posts 123 snarkmarks Registered: Apr 15th 2005 Occupation: Fast Food Location: USA
Heh, try this place, it's where I first learned to use OpenGL.

http://nehe.gamedev.net/lesson.asp?index=01

Also the best place I've found on the net.

Until Later...
Dark_Kilauea
DVS Administration
http://www.dvstudio-production.com/
Re: 3D Engine Posted by ReNo on Thu Jun 23rd 2005 at 8:42pm
ReNo
5457 posts
Posted 2005-06-23 8:42pm
ReNo
member
5457 posts 1991 snarkmarks Registered: Aug 22nd 2001 Occupation: Level Designer Location: Scotland
I don't think its fair to say OpenGL is "better" than DirectX, nor that
people should definately learn one over the other. DirectX is more
widely used than OpenGL these days and so learning it probably
has more advantages, learning wise, in the long term. It also has
awesome documentation, what with being a Microsoft endeavour, compared
to OpenGL. OpenGL might be easier as far as many people are concerned,
though personally I haven't really found one to be particularly more
user friendly than the other and on most fronts they have equivelant
ways of doing things. Oh and to be honest, these days graphics cards
are optimised for use with both API's, not just OpenGL. If that
weren't the case, why are almost all of the "big" engines these days
DirectX based (with the exception of Doom3)? I'm not trying to bad
mouth OpenGL here at all and I'm not advanced enough with either to
really have my word count for much; I just don't think its correct to
just say one is "better" than the other.

Nehe is a great tutorial set to follow through, and its what I used to
get started. I also thoroughly recommend it for learning OpenGL - its
the best I've seen and everybody seems to suggest it.

My main advice is that if you are seriously interested in game
programming, get started on C++. VB just doesn't cut it I'm afraid :sad:
[img]http://card.mygamercard.net/sig/Default/reno84.png[/img]
Designer @ Haiku Interactive | ReNo-vation.net
Re: 3D Engine Posted by Dark_Kilauea on Thu Jun 23rd 2005 at 10:55pm
Dark_Kilauea
629 posts
Posted 2005-06-23 10:55pm
629 posts 123 snarkmarks Registered: Apr 15th 2005 Occupation: Fast Food Location: USA
The reason that Direct X is used more frequently resently is because
Microsoft has been pushing it. Even to the point of paying game
manufactuers to use Direct X instead of OpenGL.

OpenGL also has great Documentation. You just have to google for it. :smile:

Inly the most resent cards are optimized for Direct X. Some of
them acually just change the Direct X to OpenGL in the hardware.
He he he...

Well, anyways, this is just my opinion.
Dark_Kilauea
DVS Administration
http://www.dvstudio-production.com/
Re: 3D Engine Posted by ReNo on Fri Jun 24th 2005 at 12:27am
ReNo
5457 posts
Posted 2005-06-24 12:27am
ReNo
member
5457 posts 1991 snarkmarks Registered: Aug 22nd 2001 Occupation: Level Designer Location: Scotland
Another reason why DirectX is so widely used is that it is an API that
encapsulates most of the backbone functionality of a game - 2D/3D
graphics, music and sound effects, input, networking, etc... OpenGL is
purely graphics based, leaving a fair bit more work for the developer
on these other aspects.

Show me something as complete, concise, and well managed as
MSDN
(particularly when its all integrated with Visual Studio...so
handy), and then I'll admit it has great documentation :razz:
Some of
them actually just change the Direct X to OpenGL in the hardware
Are you sure about this? Doesn't sound likely to me (though I'm in no
real position to argue against it), but if you have any proof or backup
I would be very interested in reading about it.

PS. Took a look at the program, and its a neat start. I dunno if I'd
quite call it a "game engine" as of yet (seems more like a textured
model loader/renderer), but then as its only a .exe I can't exactly see
what is going on behind the scenes. I suppose it partially comes down
to what a "game engine" is defined as - I 've written games before, and
written some 3D test programs and what have you, but I wouldn't ever
describe them as game engines. Anyway, keep it up and I hope you are
enjoying it :smile:
[img]http://card.mygamercard.net/sig/Default/reno84.png[/img]
Designer @ Haiku Interactive | ReNo-vation.net
Re: 3D Engine Posted by Crono on Fri Jun 24th 2005 at 1:14am
Crono
6628 posts
Posted 2005-06-24 1:14am
Crono
super admin
6628 posts 700 snarkmarks Registered: Dec 19th 2003 Location: Oregon, USA
Most hardware is oblivious to things like D3D or OGL.

A "D3D 9 Card" means the card has the registers that the D3D team said they needed. Doesn't really matter, since you can use Assembly or CG to use all the registers you want regardless of what they're meant for. A ?DX effect? is a very misleading term as well.

OGL is a far superior 3D API just because it conforms to C/C++ AND THAT'S IT. It is platform independent, it's just libraries with functions you call in C/C++ which tell the graphics card how to draw whatever. Not to mention when you make a game a lot of those graphic effects you have to write on your own (shaders). For basic drawing on a card though, neither is better or worse, because there's limited ways to do it.

I prefer OGL because it isn't tied down to an OS. It doesn't require you to use underhanded programming practices either. (DX requires the use of globals when there is no need amongst other things and is an overall disgusting API)

On top of all this DX REQUIRES that you use a suite. IDEs are generally annoying and under no circumstance should you be required to use one (this goes more into problems with Microsoft's IDE then anything else).

A lot of these things matter. If you're a programmer and think they don't then you're an oxymoron.

A lot of its other problems stem from general Windows development practices.

To each his own. It'd just be a good idea to recognize the world outside of Windows. Ironically, that was Window's original goal: seperate the hardware from the OS. Way to go.

This has no relavence to the thread topic though.
Blame it on Microsoft, God does.
Re: 3D Engine Posted by ReNo on Fri Jun 24th 2005 at 1:43am
ReNo
5457 posts
Posted 2005-06-24 1:43am
ReNo
member
5457 posts 1991 snarkmarks Registered: Aug 22nd 2001 Occupation: Level Designer Location: Scotland
As you said this is somewhat off topic, by why do you dislike Visual
Studio so much? What is your IDE of choice, if you use one at all?
[img]http://card.mygamercard.net/sig/Default/reno84.png[/img]
Designer @ Haiku Interactive | ReNo-vation.net
Re: 3D Engine Posted by Crono on Fri Jun 24th 2005 at 2:19am
Crono
6628 posts
Posted 2005-06-24 2:19am
Crono
super admin
6628 posts 700 snarkmarks Registered: Dec 19th 2003 Location: Oregon, USA
I don't use one generally.

But I'd probably use Eclipse (I hear there's a C++ plug in to recognize the syntax). However, that's mainly made to be used with Java (which is just a configuration file).

It isn't so much visual studio as it is Windows its self. Since, Visual Studio is just an IDE, it calls a compiler like any other and analyzes what you type doing whatever effect based on a configuration for whatever language you're using. However, the compiler and its standards are awful. Not to mention, the standards used by the compiler writers are disgusting. There are things that Win compilers let slide and then there are very valid things they refuse to allow. For example, windows compilers don't allow certain types of empty while statements. They can be used for some coding tricks, just to make things easier. I forget what the trick was exactly, but not all empty while loops are infinite and they made the opposite assumption.

This, if you were wondering, line of thinking is reflected throughout many areas of development, especially in software developers.

An easy example is a little survey that was conducted (don't remember the specifics), but basically 5 or so software developers (developing for the general consumer market) were given a problem, (I can't find the exact problem in the book I'm thinking of, so I'll paraphrase) List the test cases for a triangle calculator. I believe the calculator was to calculate the 3rd angle, given the first two. Now, test cases are ALL possible things you need to test for. None of the engineers got all of them. I think, they, generally, got seven of the test cases, when there's actually 14 (or so). What does this mean?
It's just an example of the line of thinking a lot of engineers have. They almost NEVER come up with all obvious cases to test for.
In the compiler case, they may have never heard of the empty loop trick. (That isn't the name) so there is no basis to check for it.

There are other issue that stem from this. I'm sure all this seems unrelated, but I assure you all of it goes hand in hand.

Basically, I don't like Microsoft, or their suite because of their lack of foresight. They made some bad choices in a personal standard (which is always a good thing to have) and in the long run they made many mistakes, they did not go back and fix them, but rather built on top of them creating new ways to bypass old mistakes, creating new problems along the way. (On top of that they pushed their shoddy standards for their shoddy products on other people)

I bet when they started developing Visual Studio, they never thought anyone would make a 3rd party compiler or want one. Either that or, in combination, they wouldn't want anyone to use a 3rd party compiler.

Does this make sense? Is it a little easier to see how this line of thought could be taken through most of their products? I hope so.
And I hope I explained my position well enough.
Blame it on Microsoft, God does.
Re: 3D Engine Posted by ReNo on Fri Jun 24th 2005 at 3:12am
ReNo
5457 posts
Posted 2005-06-24 3:12am
ReNo
member
5457 posts 1991 snarkmarks Registered: Aug 22nd 2001 Occupation: Level Designer Location: Scotland
I guess I somewhat understand people's dislike of Microsoft, but I
certainly don't share it. While yes, I'm sure they have built on
mistakes and used workarounds they shouldn't have, its gonna be pretty
damn rare that you come across a company, at least of those as large as
Microsoft, that hasn't. It's all too often people mindlessly bash the
company without good reason and that really does annoy me, but at least
you do have reasons so I'll respect your opinion.

I've used only a few IDE's in my time, but none of them really came
close to the quality and usefulness of Visual Studio (particularly
.net). Even if its compilers are forced on you, losing out on one or
two "neat little tricks" is something I'm more than willing to do in
order to gain all the benefits. I don't think I could imagine
programming without an IDE there to offer some sort of project
management features, shortcuts to function/variable definitions,
integrated dynamic documentation for the language/API, autocompleting
function calls with the necessary parameters, decent debugging tools,
shortcuts from compile error reports to the actual problem code, etc...
These are all tools that really do save time; I can't imagine how much
longer it must take to get by programming in only a text editor.

Out of curiousity what sort of size projects have you programmed without using an IDE?

EDIT: On the issue of their compiler's quality; is it really true that
their's is particularly bad? I can certainly grasp the idea of a bad
compiler as I did a short module which was related to the topic, but
Visual Studio being as popular as it is, you'd think would mean their
compiler, if not the best out there, is at least up to snuff.
[img]http://card.mygamercard.net/sig/Default/reno84.png[/img]
Designer @ Haiku Interactive | ReNo-vation.net
Re: 3D Engine Posted by Crono on Fri Jun 24th 2005 at 5:00am
Crono
6628 posts
Posted 2005-06-24 5:00am
Crono
super admin
6628 posts 700 snarkmarks Registered: Dec 19th 2003 Location: Oregon, USA
The problems with the compiler stem from the problems with their programming habits. However, you must understand they don't see them as problems or flaws.

I didn't, in any way, mean to intend that the only disadvantage in using the win compiler was losing some "tricks". That was simply an example of how they do not follow the ANSI standard. Which, if you are wondering, are the standards for C and C++. Internationally.

I just don't use IDEs all that often. That doesn't imply that I don't use debuggers though and please don't think they're one in the same. For debugging I usually use DDD. In combination with the GNU compilers. There's some things they don't allow either that are in the standard, but they're usually minute (they don't allow the word "class" to be in a hierarchy definition, so you can't say class classname: public class blah, it'll give a compile error because it thinks you're defining a new class that never ends)

Auto completion is in every IDE. Project spaces are in every IDE. However, most other IDEs allow set ups for ANY language as long as you supply a compiler and a configuration for the syntax.(Including a language you make up)

Speaking of DDD, something that is very nice about it is the graphical display. It'll graphically map out your dynamic data so you can plainly see if there are breaks in allocations (segmentation faults, blue screen of death or "send error report" under Windows).

I think that any compiler that ignores standards that have been set by a committee, who knows the language far better then some group of people, is a bad compiler. To be honest, the only reason why Visual Studio is so popular is because it's the main development tool for Windows and Windows is widely used by whatever developers target consumer market. That's it. Granted .NET was the first IDE to do (so called) complete integration. However, that doesn't make it the best.

What I was talking about with the whole "mistakes" speech is that they STILL haven't fixed the problems. It stems from the standards they set for themselves, and inherently, for anyone who programs on their platform.

I've never had time to do a big project, nor the man power. But, pretty much any assignment I've ever done has been using Vi on a Unix machine. (Vi is a text editor for Unix platforms, very very handy. Vim is nice too, it has language recognition, but it also has to be configured). I might be able to start something soon if I can get some people to help out. Sadly I only know a couple other people who're on the same page with me when it comes to C++. (My software engineering class assignment was an online library. Used Vi with PHP and DHTML. Just because I don't want to list all those languages out)

You also have to remember that I don't exactly have a mouse or anything when I do most of this stuff :lol:
Typing is much faster then taking your hand away from the keyboard moving the mouse and clicking. If someone says it isn't it's just because they're not used to the environment and they don't know how to use the tool.
Not to mention, in a Unix environment you can hit a key or two and be in a completely different application while having your previous work still running. It's very handy ESPECIALLY for developers. There's a reason why people still use Unix and Unix platforms even though they've been around, practically, un-alerted since the 70s. Thanks AT&T.

I'll be able to whine about compilers more in a few months once I take the compiler courses, lucky for me: they're in Java :biggrin:

But, seriously, I could go on about several practices Microsoft and many many other developers. Hell, a lot of authors of programming books teach bad practices. Anyone remember the "pre fix or post fix" argument? It's that type of widespread ignorance about the tools programmers use that is the problem; yes, it is a PROBLEM. Templates are another can of worms.

I know that learning to use the Microsoft suite is much easier (or at least it seems to be :wink: ) but in the end you'd be less knowledgeable and rather useless as a developer in only being familiar with it. It's like people who goto DeVry or ITT and get a degree just to get a dead end job. Only knowing how to develop on a particular companies software gives that company all the power. Which is never a good thing. You, as the developer, then become dependent on a corporation while the language you use is complete and free to develop for otherwise. This puts you in a very bad situation because you have no control.
Blame it on Microsoft, God does.
Re: 3D Engine Posted by Damic on Fri Jun 24th 2005 at 2:28pm
Damic
113 posts
Posted 2005-06-24 2:28pm
Damic
member
113 posts 71 snarkmarks Registered: Dec 22nd 2004 Occupation: Machine operator Location: belgium
Ok thx for all the replys

thx Dark_Kilauea for the link it has some VB6 code to :biggrin:

Reno: it's just a start, I can enable the keyboard and then you can control anything :biggrin:

Mmmh damn I was using Direct Draw instead of Direct 3D :o lousy M$ :@
Thx in advantage
Re: 3D Engine Posted by ReNo on Fri Jun 24th 2005 at 4:25pm
ReNo
5457 posts
Posted 2005-06-24 4:25pm
ReNo
member
5457 posts 1991 snarkmarks Registered: Aug 22nd 2001 Occupation: Level Designer Location: Scotland
I'm much too lazy to reply in much depth to that one Crono (a few
tangents in there man :biggrin: ), but I have read it. I'm aware of ANSI
standards, and I guess it doesn't really come as a surprise that MS
haven't stuck by such standards (just look at IE). I have used a number
of IDE's and I'm aware that many of the features of VS are seen in them
(hence why I said I wouldn't care to program without an IDE, not
without VS). I've no doubt there are other great ones out there, and
maybe Visual Studio ISN'T the "best", but for me, a run of the mill
programmer who doesn't really plan on programming as a career, its damn
useful. I wouldn't say I'm a programmer who is only familiar with one
suite or one company's software. I can use OpenGL or DirectX, Java,
C/C++, and having worked in a number of IDE's I think I'd be fairly
comfortable picking up others. It just so happens that, for me, working
in Visual Studio is the best way to do most of it.
[img]http://card.mygamercard.net/sig/Default/reno84.png[/img]
Designer @ Haiku Interactive | ReNo-vation.net
Re: 3D Engine Posted by Dark_Kilauea on Fri Jun 24th 2005 at 4:38pm
Dark_Kilauea
629 posts
Posted 2005-06-24 4:38pm
629 posts 123 snarkmarks Registered: Apr 15th 2005 Occupation: Fast Food Location: USA
Ok, OpenGL Documentation:

http://www.talisman.org/opengl-1.1/Reference.html

http://www.opengl.org/documentation/

And of course, if you were on linux, there is always man.

Until later...
Dark_Kilauea
DVS Administration
http://www.dvstudio-production.com/
Re: 3D Engine Posted by Damic on Fri Jun 24th 2005 at 5:17pm
Damic
113 posts
Posted 2005-06-24 5:17pm
Damic
member
113 posts 71 snarkmarks Registered: Dec 22nd 2004 Occupation: Machine operator Location: belgium
Thx Dark_kilauea for the links, mmmh hl2 is allso DX(9) :| hl1 is OpenGl, wa the change :sad:
Thx in advantage
Re: 3D Engine Posted by ReNo on Fri Jun 24th 2005 at 6:03pm
ReNo
5457 posts
Posted 2005-06-24 6:03pm
ReNo
member
5457 posts 1991 snarkmarks Registered: Aug 22nd 2001 Occupation: Level Designer Location: Scotland
OpenGL was certainly the favourite back in those days, but DirectX
seems to have overtaken it in popularity recently. Note though that HL1
could actually use D3D or OpenGL, but it was certainly more optimised
for OpenGL and so its always recommended to run HL1 engine games with
it.
[img]http://card.mygamercard.net/sig/Default/reno84.png[/img]
Designer @ Haiku Interactive | ReNo-vation.net
Re: 3D Engine Posted by Dark_Kilauea on Fri Jun 24th 2005 at 8:24pm
Dark_Kilauea
629 posts
Posted 2005-06-24 8:24pm
629 posts 123 snarkmarks Registered: Apr 15th 2005 Occupation: Fast Food Location: USA
I still think HL2 should of allowed you to use OpenGL. At least
make it compatable both ways. I would of been able to optimize
HL2 better if it was OpenGL compatable...

Until later...
Dark_Kilauea
DVS Administration
http://www.dvstudio-production.com/
Re: 3D Engine Posted by ReNo on Fri Jun 24th 2005 at 8:30pm
ReNo
5457 posts
Posted 2005-06-24 8:30pm
ReNo
member
5457 posts 1991 snarkmarks Registered: Aug 22nd 2001 Occupation: Level Designer Location: Scotland
But modern graphics cards can run both well. Its not like back in the
day when ATI was crappy at OpenGL and nVidia (or Voodoo) cards were bad
with DirectX. Its time better spent for the developers to concentrate
on optimising the game for one API than putting in support for two, as
anybody who has a card good enough to play HL2 has a card good enough
to work with either DirectX or OpenGL effectively. The choice would
mean nothing, and probably just lead to more work for the developers
and confusion for users. What do you mean you'd be able to optimise it
better if it was OpenGL compatible anyways?
[img]http://card.mygamercard.net/sig/Default/reno84.png[/img]
Designer @ Haiku Interactive | ReNo-vation.net
Re: 3D Engine Posted by Dark_Kilauea on Fri Jun 24th 2005 at 8:49pm
Dark_Kilauea
629 posts
Posted 2005-06-24 8:49pm
629 posts 123 snarkmarks Registered: Apr 15th 2005 Occupation: Fast Food Location: USA
This is because I have a G-Force FX card. One of those that didn't handle DirectX as well.

Until Later...
Dark_Kilauea
DVS Administration
http://www.dvstudio-production.com/
Re: 3D Engine Posted by Myrk- on Sat Jun 25th 2005 at 12:49am
Myrk-
2299 posts
Posted 2005-06-25 12:49am
Myrk-
member
2299 posts 604 snarkmarks Registered: Feb 12th 2002 Occupation: CAD & Graphics Technician Location: Plymouth, UK
Just for the sake of being awkward, please leave it in Direct X... Don't want those grubby, filthy Mac users running a program :razz: And any Linux users are obviously so l337 that they can recode the program you made to work on Linux machines themselves... :biggrin:

Until later...
-[Better to be Honest than Kind]-
Re: 3D Engine Posted by Dark_Kilauea on Sat Jun 25th 2005 at 3:06am
Dark_Kilauea
629 posts
Posted 2005-06-25 3:06am
629 posts 123 snarkmarks Registered: Apr 15th 2005 Occupation: Fast Food Location: USA
Myrk, are you resorting to stereotypes? :razz:

Seriously, reprogramming anything is essentaly impossible. It's
like turning a HL2 bsp into a .vmf file. You get the jist of it,
but it's not complete. Even with stuff like wine, many DirectX
and DirectDraw apps don't work, and I would never trust the Windows
api's to do anything with my Linux partition.

There are professional Windows emulators but, who wants to pay for
them? Plus the effect many of them have on system resources...

And to add, why are you stealing my closing to all my messages?

sits there, wondering how to convey that he's not being hostile, and decides just to live a crappy note

Until Later...

Dark_Kilauea
DVS Administration
http://www.dvstudio-production.com/
Re: 3D Engine Posted by SaintGreg on Sat Jun 25th 2005 at 4:21am
SaintGreg
212 posts
Posted 2005-06-25 4:21am
212 posts 51 snarkmarks Registered: Dec 3rd 2004
Jumping into the discussion:

IDE's for programming languages generally just bog you down. For
an expert, a good text editor cough vim will only make things go
faster. Vim has basically everything you could ever want in an
IDE, but its in a much cleaner, concise package. One thing I hate
about VS is that it takes like 20 seconds to start up, if I open a file
its because I want to use it now, not in 20 seconds. Plus text
editors are much more customizable than an IDE which has only a limited
number of options. Thats one reason I stopped using dev-cpp is
because I could never get it just the way I wanted. Plus
everything is right at your fingertips, you never have to leave the
keyboard to go poking around something; so its faster, and over the
long run it hurts your wrists less. Not to mention that all you
need is to have a shell open, you dont need any windowing or mouse
support or anything.

I am part of a medium sized fortran program (for all the programs
involved all told its about 30 files or so), and we use vi since its
just so much easier in the long run. Plus, and this is especially
true of microsoft, IDE's tend to use project files instead of
makefiles. Which means that you have to go through leaps and
bounds just to compile someone elses code that uses an IDE. For
HL1/2 I used VS to compile it since they don't provide a makefile, but
just use vi as normal to actually read and modify the code. I
want to be able to just type make and have it compile on any system I
put the code on.

I always thought it was odd that the Microsoft compilers were never
very good. I mean, the ANSI C standard was published nearly 20
years ago, and yet microsoft has taken this long to produce an only
semi-decent compiler.

GeForce FX was just a flop. Nothing more.

Its a tough choice to pick one graphics API over the other. If I
knew anything about them I would say more. But maybe its like
your choice of programming languages. You wouldn't program HL2 in
perl, just like you wouldn't program a test program in assembly (test
as in a driver to run test cases of some code). Programming
languages are just a tool, the right tool for the right job.

For the consumer of HL2 it really doesn't make a difference whether
valve programmed HL2 with DX or OGL. The main benefit of using
OpenGL (beyond any ease of use type issues) is that it offers cross
platform support. Since valve is clearly not going to make a unix
port of HL2 what does it matter to the consumer? HL was openGL
and they never ported it so what difference does it make...
To get something to work, sometimes you just have to beat your head against the wall longer; the skin grows back, but the brick doesn't.

Source hates soup!
Re: 3D Engine Posted by $loth on Sat Jun 25th 2005 at 6:42am
$loth
2256 posts
Posted 2005-06-25 6:42am
$loth
member
2256 posts 292 snarkmarks Registered: Feb 27th 2004 Occupation: Student Location: South England
Lol, If you find a tutorial of opengl for VB6,
No! noooooooooooooo! Please don't mention this horrid thing to me ever again!

(I had to use it for computing along with access, I am now sick and tired of them both).
Re: 3D Engine Posted by Crono on Sat Jun 25th 2005 at 6:51am
Crono
6628 posts
Posted 2005-06-25 6:51am
Crono
super admin
6628 posts 700 snarkmarks Registered: Dec 19th 2003 Location: Oregon, USA
Apparently, HL1, under WineX, runs great (or so I hear).

By the way, Dark, WineX IS a professional Windows emulation (Wine with DX support) application. It also costs money. I don't remember what they changed the name to though. :smile:

After all, it doesn't matter what video interface libraries you use if the rest of the application is strictly written for one OS.

I think whats-the-whos-its-who-made-chrome had a really good idea. Make the base engine in Java then have the run time intensive stuff talk to that engine (Meaning that changes only need to be made to the small engine portion that interacts with the OS, which generally is performance tweaking). It's almost instant multi-platform-ification.

Just a note, I can't imagine anyone jumping into using OGL or DX without suffecient knowledge and experience with C/C++. Not to mention assembly. Because, you can't do EVERYTHING with graphics libraries.
Blame it on Microsoft, God does.
Re: 3D Engine Posted by RaPtoR on Sat Jun 25th 2005 at 12:26pm
RaPtoR
212 posts
Posted 2005-06-25 12:26pm
RaPtoR
member
212 posts 61 snarkmarks Registered: Jan 1st 2005 Location: Sweden
Haha, cool :razz:

Looks like you set up a direct draw surface and loaded a pre made directx model onto it.

Surely DirectX has lots of features and stuff but i'm just the kind of guy who has to be completley original.

That's why i'm making a completley pure 3d motor witch uses my own
functions to project a world of coordinates on a form. It's currently
capable to spray a cloud of dots(XYZcoordinates) onto a form. You can
navigate through the cloud using your keyboard and mouse. And it's a
perfect perspective :biggrin:

Currently working on a way to draw triangles and later on i will attempt to fill them .

And oh, loth cover your eyes now: it's vb. :X
God got tired waiting all sunday for the world to compile and finaly had it.
On the Eight day, god created func_details, and he saw that it was fast.
Re: 3D Engine Posted by Damic on Sat Jun 25th 2005 at 6:17pm
Damic
113 posts
Posted 2005-06-25 6:17pm
Damic
member
113 posts 71 snarkmarks Registered: Dec 22nd 2004 Occupation: Machine operator Location: belgium
Yeeah Raptor :biggrin: VB6 or Vb.net?

mmh maybe I can help you with something :biggrin: ??
Thx in advantage
Re: 3D Engine Posted by RaPtoR on Sat Jun 25th 2005 at 6:54pm
RaPtoR
212 posts
Posted 2005-06-25 6:54pm
RaPtoR
member
212 posts 61 snarkmarks Registered: Jan 1st 2005 Location: Sweden
Hehe maybe ;D

It's VB6, and here's a screenshot for you:

User posted image

(Coordinate line with a coordinate cloud)

Currently working on drawing triangles so i can make surfaces and that
kind of stuff. The problem is that when i project XYZ positons on the
XY surface, some coordinates that aren't in the FOV can be at unlimited
XY distances away so it's not just to draw lines between 3 point's.
Therefore i have to calculate the triangle lines using the XYZ data
before it's projected...

It may sound advanced but it's really not when you into it. :biggrin:

If you want i can send you the source too but you'll probably have a
hard time getting something. My swedish comments wont help you... :razz:
God got tired waiting all sunday for the world to compile and finaly had it.
On the Eight day, god created func_details, and he saw that it was fast.
Re: 3D Engine Posted by SaintGreg on Sun Jun 26th 2005 at 6:20am
SaintGreg
212 posts
Posted 2005-06-26 6:20am
212 posts 51 snarkmarks Registered: Dec 3rd 2004
I don't remember what they changed the name to though.
I think its called "Cedega". You gotta pay though. You can
download free versions from miscellaneous places, but building it may
be less straightforward. Plus you don't legally :wink: get
point2play which is the main benefit of paying for cedega.

Then again I think Wine is every bit as good as cedega, so you might as
well just use that and go straight to the source.
http://www.winehq.com/
To get something to work, sometimes you just have to beat your head against the wall longer; the skin grows back, but the brick doesn't.

Source hates soup!
Re: 3D Engine Posted by Crono on Sun Jun 26th 2005 at 8:20am
Crono
6628 posts
Posted 2005-06-26 8:20am
Crono
super admin
6628 posts 700 snarkmarks Registered: Dec 19th 2003 Location: Oregon, USA
WineX did cost money... Wine never cost money though.
Blame it on Microsoft, God does.
Re: 3D Engine Posted by Myrk- on Sun Jun 26th 2005 at 10:18am
Myrk-
2299 posts
Posted 2005-06-26 10:18am
Myrk-
member
2299 posts 604 snarkmarks Registered: Feb 12th 2002 Occupation: CAD & Graphics Technician Location: Plymouth, UK
Dark_Kilauea said:
Myrk, are you resorting to stereotypes? :razz:

Seriously, reprogramming anything is essentaly impossible. It's like turning a HL2 bsp into a .vmf file. You get the jist of it, but it's not complete.
Actually someone who visits this website on rare occasions actually created a perfect program to do it, but he was advised not to release it, and I don't think he has. I think HL2 has one built in aswell somewhere in the SDK for examing the SP maps? (Correct me if I'm wrong about that last one).
-[Better to be Honest than Kind]-
Re: 3D Engine Posted by Damic on Sun Jun 26th 2005 at 11:19am
Damic
113 posts
Posted 2005-06-26 11:19am
Damic
member
113 posts 71 snarkmarks Registered: Dec 22nd 2004 Occupation: Machine operator Location: belgium
@Sloth: VB6 is NOT VBA (Visual Basic for Applications), I hate vba, beacouse its so different :sad:

@Raptor: nicely done, but 43FPS is'nt that a little bit slow? I work without timers (GetTickCount, Do ... loop, ...) :wink:
Thx in advantage
Re: 3D Engine Posted by ReNo on Sun Jun 26th 2005 at 11:39am
ReNo
5457 posts
Posted 2005-06-26 11:39am
ReNo
member
5457 posts 1991 snarkmarks Registered: Aug 22nd 2001 Occupation: Level Designer Location: Scotland
I haven't heard anything about a built in decompiler Myrk, and wouldn't
imagine there would be one. They provided the source files to a few
maps - why would they bother if they had a decompiler there to use (or
why bother with a decompiler if they could just include the sources)? I
think that even the guy who had made a "perfect" decompiler was most
likely not quite on the ball there. I dunno if HL2 BSP's do include
enough info to get a perfect replica of the orginal VMF, but I highly
doubt it. Most likely he had made a pretty good decompiler that can
give a fairly accurate output, but perfection is most likely impossible
with such reverse engineering.
[img]http://card.mygamercard.net/sig/Default/reno84.png[/img]
Designer @ Haiku Interactive | ReNo-vation.net
Re: 3D Engine Posted by RaPtoR on Sun Jun 26th 2005 at 12:25pm
RaPtoR
212 posts
Posted 2005-06-26 12:25pm
RaPtoR
member
212 posts 61 snarkmarks Registered: Jan 1st 2005 Location: Sweden
@Raptor: nicely done, but 43FPS is'nt that a little bit slow? I work without timers (GetTickCount, Do ... loop, ...) :wink:
First of all, it's not complete yet so there might be several things that can be easy to optimize.

Second, i don't work with timers eather. I use do...loop to redraw.

And third, it's not the actual drawing of the dots that's slow (i know
i checked). I always have 35 fps for some reason, no matter if i have
500 or 2 coordinates. I't may be memory allocation or something like
that witch slows it down a bit.

:razz:
God got tired waiting all sunday for the world to compile and finaly had it.
On the Eight day, god created func_details, and he saw that it was fast.
Re: 3D Engine Posted by Damic on Sun Jun 26th 2005 at 12:37pm
Damic
113 posts
Posted 2005-06-26 12:37pm
Damic
member
113 posts 71 snarkmarks Registered: Dec 22nd 2004 Occupation: Machine operator Location: belgium
mmh I had allso 70->75FPS till I see the he was using vsync :sad: , ha you use the timer only for the FPS :|
Public lFps(2) As Long

Public Function FPS(OldFps As Long) As Long

FPS = OldFps

If GetTickCount - lFps(0) >= 1000 Then

lFps(0) = GetTickCount

FPS = lFps(1)

lFps(1) = 0

End If

lFps(1) = lFps(1) + 1

End Function

Thx in advantage
Re: 3D Engine Posted by fraggard on Sun Jun 26th 2005 at 3:48pm
fraggard
1110 posts
Posted 2005-06-26 3:48pm
fraggard
member
1110 posts 220 snarkmarks Registered: Jul 8th 2002 Occupation: Student Location: Bangalore, India
Dark_Kilauea said:
Myrk, are you resorting to stereotypes? :razz:

Seriously,
reprogramming anything is essentaly impossible. It's like turning a HL2
bsp into a .vmf file. You get the jist of it, but it's not complete.
Actually someone who visits this website on rare occasions actually
created a perfect program to do it, but he was advised not to release
it, and I don't think he has.
He did release it, despite some whining from some guy.

http://www.geocities.com/cofrdrbob/vmex.html
I dunno if HL2 BSP's do include
enough info to get a perfect replica of the orginal VMF, but I highly
doubt it. Most likely he had made a pretty good decompiler that can
give a fairly accurate output, but perfection is most likely impossible
with such reverse engineering.
I think he said the Source engine's BSP files had a lot of extra information in them, which made decompiling them easier. I've never tried it though. I heard it wasn't perfect, but fairly good, and much better than ye olde WinBSP for HL1
Re: 3D Engine Posted by Damic on Sun Jun 26th 2005 at 4:02pm
Damic
113 posts
Posted 2005-06-26 4:02pm
Damic
member
113 posts 71 snarkmarks Registered: Dec 22nd 2004 Occupation: Machine operator Location: belgium
Vmex does it job much accurater then any other bsp decompile program.
Mostly I use it to decompile HL2 maps and they are accurate :smile:
Thx in advantage
Re: 3D Engine Posted by BlisTer on Sun Jun 26th 2005 at 10:32pm
BlisTer
801 posts
Posted 2005-06-26 10:32pm
BlisTer
member
801 posts 1304 snarkmarks Registered: Jun 10th 2004 Location: Belgium
Myrk- said:
<DIV class=quote>
<DIV class=quotetitle>? quoting Dark_Kilauea</DIV>
<DIV class=quotetext>Myrk, are you resorting to stereotypes? :razz:

Seriously, reprogramming anything is essentaly impossible. It's like turning a HL2 bsp into a .vmf file. You get the jist of it, but it's not complete.
Actually someone who visits this website on rare occasions actually created a perfect program to do it, but he was advised not to release it, and I don't think he has. I think HL2 has one built in aswell somewhere in the SDK for examing the SP maps? (Correct me if I'm wrong about that last one).</div></div>
yeah it's Rof and its not cause he doesnt post much that he's rarely here. i think he visits quite often.
These words are my diaries screaming out loud