Submit
A8433b04cb41dd57113740b779f61acb
1
Reedbeta 167 Jan 07, 2014 at 05:49

Well, you said “This is the first time we’ve embarked on such a project”, which I assumed meant a game-like project. If you are actually an experienced game developer, I apologize. (Besides, I would expect a team or technical lead with game development experience to have someone able to make these estimates themselves, rather than pinging a web forum for free advice…)

Does your “completely different” approach affect the rendering layer a great deal? If so, we would need to know a lot more about it in order to come up with any reasonable estimates.

If your special sauce is more front-end and doesn’t affect the low levels too much, though, then I still say you can get a lot of mileage out of off-the-shelf components, perhaps using parts of existing open-source libraries and engines, and building your own front-end over them. There’s just no reason to pay people to write the 1000th iteration of a basic GL engine with alpha-blending, deferred lighting and real-time shadows from scratch.

In response to reply on Non-AABB question
88dc730f0f71e55be39de0ad103bd9ff
0
Alienizer 109 Jan 07, 2014 at 05:41

oh I see, I get it. Thanks again Reed for your help.

A638aa42130293f319eda7fa4ba121f4
0
fireside 141 Jan 07, 2014 at 05:40

I guess Google chrome can read asm.js now. I can run Epic Citadel at 43 frames per second, 1600 x 900 on my amd laptop with an A8.

88a052b727565e590b99c0278ce6221e
0
MrLange 102 Jan 07, 2014 at 05:06

If any of the things you suggested were viable options we wouldn’t be bothering with this. Believe me, I know all of this very well. We’re not creating a game or simulation. We’re creating a program capable of animation and simulation. Its approach is completely different from software like Unity and 3d animation suites, and we believe it will be far more efficient. We can’t depend on external engines to get it to work, we have to create a lot of it from scratch.

“Especially since you have no previous experience in game development” I’m not sure how you inferred that, I have quite a bit of experience in game development.

A8433b04cb41dd57113740b779f61acb
1
Reedbeta 167 Jan 07, 2014 at 05:00

Is your goal ultimately to make a game or simulation of some sort? If so, you should seriously question the wisdom of building your own game engine. It will be much cheaper and easier to use an off-the-shelf engine such as Unity, UDK or CryEngine. Especially since you have no previous experience in game development, there are a lot of minefields and issues you probably haven’t thought about, that you can sidestep by using an off-the-shelf engine.

All the features you listed are very basic and any mature off-the-shelf engine should have them. The only exception is the video enc/dec bit. Many engines have support for playing video files, either full-screen (cutscenes) or into a texture that can then be rendered in the 3D scene (for showing video on a TV in the game world, for instance). Support for encoding video is probably less common. If you just need to capture video/audio of what the engine is outputting, that can be done with external tools like FRAPS. If it’s something more complex you’ll likely need to mod the engine, but that can be done with a source license and will be way cheaper than building the whole engine from scratch.

In response to reply on Non-AABB question
A8433b04cb41dd57113740b779f61acb
1
Reedbeta 167 Jan 07, 2014 at 04:26

They’re still boxes, right? Set up a coordinate system that’s aligned with the box, in whatever orientation it’s in. Then the box is axis-aligned in that coordinate system, by definition. If you transform the vertices into that coordinate system, you can calculate the min and max. Then generate the 8 corners from the min and max, and transform them back into world coordinates.

A638aa42130293f319eda7fa4ba121f4
0
fireside 141 Jan 07, 2014 at 04:08

Javascript has quite a ways to go before it’s really useful for 3d, but I think it will get there. I don’t think native client will be around much longer because it’s kind of the same as java’s write once, run everywhere. That doesn’t work very well in practice because you have to keep fixing each individual application. It’s kind of write once, fix everywhere. We kind of have the same problem with javascript and browsers, but I think with standards it will work out.

6837d514b487de395be51432d9cdd078
1
TheNut 179 Jan 07, 2014 at 03:41

The three major issues he posted are indeed a problem, although they are just inconveniences. I’ve learned to accept that for the greater good that browsers at least offer the ability to become gaming platforms and even much more. Plus you get use to the limitations rather quickly and just work with it. ECMAScript 7.0 has plans to evolve the language from out of the stone age. Overloading, concurrency, real classes.

I personally would not recommend emscripten as an alternative. Last I tried to use it, it was like trying to build a rocket ship to land on the moon. Documentation was equivalent to interpreting hieroglyphics, toolchain could only run on Linux, requires CLang, and special platform handling. You can’t just dumbo drop Win32 or OpenSSL stuff in there and expect a working JavaScript app. Even if you spend the time to familiarize yourself with that, you’re going to be building huge JavaScript applications. All that bytecode is going to translate into JavaScript code. At least with a pure JS framework, the browser is responsible for streaming MP3s, loading PNGs, JPEGS, etc. Compact, efficient, and using native browser functions. It’s a nice idea in principle, but I just don’t think it’s the right way. I’d sooner promote Google’s native client, which would make more sense.

A638aa42130293f319eda7fa4ba121f4
1
fireside 141 Jan 07, 2014 at 03:23

Seems to mostly complain about type safety, which I agree with. The cloning position thing, it seems like wouldn’t be very hard to work around and passing by reference is kind of a necessity.

In response to reply on Non-AABB question
88dc730f0f71e55be39de0ad103bd9ff
0
Alienizer 109 Jan 07, 2014 at 03:05

Yes, I want to grow it in whatever orientation it is. I’m not sure what you mean tho. An AABB doesn’t have 8 points to define its bounding box (like a frustum do), an AABB only has a (float3) min and max. So I’m lost here Reed!!!

In response to Non-AABB question
A8433b04cb41dd57113740b779f61acb
1
Reedbeta 167 Jan 07, 2014 at 02:35

Do you want to grow the box while maintaining a fixed orientation? If so, you can just transform the plane vertices into the box’s coordinate system. The box is axis-aligned in its own coordinate system so you can treat it like an AABB and just take min/max of everything.

117d385ca7305f161dce4d680d2ea63c
0
piradyne 102 Jan 07, 2014 at 00:58

We’ve released version 1.0.4.Alpha.

5ec43b8e50ba808ef30ceed66fd1f479
0
dazin09 104 Jan 06, 2014 at 03:55

Cheers!

5ec43b8e50ba808ef30ceed66fd1f479
0
dazin09 104 Jan 06, 2014 at 03:52

Unity3d Is Very Powerful, we currently don’t have any documentation on the game, as it is still in alpha and were still working on it. The French revolution idea we will come back to, its just that at the time, i didn’t know the true power of the Unity Engine, As now me and my partner have gotten better with it we’ve discovered more things that we can do to make the experience better. We hope to get the game on Steam, It will probably be out mid this year(2014).

In response to Project Root - Indie game
55bfdffa8b815ecd8926c21b0d909a5d
0
keywiz 101 Jan 05, 2014 at 23:27

Here is the right download link http://www.opqam.com/download

5893a0a600811d19c5d9726f3f63844e
0
demonixis 102 Jan 05, 2014 at 11:37

It’s a great news ! What is the script language used in the editor ?

B20d81438814b6ba7da7ff8eb502d039
0
Vilem_Otte 117 Jan 04, 2014 at 20:48

True, well I still have somewhere an implementation of single-pass depth-fail shadow volumes using geometry shader. I even tried plausible shadows using penumbra wedges and visibility buffer (but meh, for complex models this introduces tons of issues, yet yields correct penumbra shadows).

As for shadow mapping - it isn’t possible to achieve correct penumbra shadows with them. And for most solutions they use jittering (which I personally HATE, noise is just pure evil on screen, and players hate it) - so I am using quite heavy filter that doesn’t result in noisy result.

Ray traced shadows are good (I work with ray tracers a lot), doing realtime ray tracing in whitted style isn’t a problem on good gpu. Path tracing is, it is just noisy. Don’t get me wrong, there are ppl with good results (Jacco Bikker with his Brigade for example - nothing against Brigade, it is awesome piece of technology, it’s not just suited for games yet), but it is still noisy and it will still be noisy within next years. I think thats the main problem with path tracing for now, the noise is too huge compared to real world (there is noise too in your vision, but barely visible), I think we need some improvement of current algorithms. Of course, for static frames or movies, it is awesome.

117d385ca7305f161dce4d680d2ea63c
0
piradyne 102 Jan 04, 2014 at 18:57

My post on frame-based timing in JetEngine.

8fcd7ad9a46f260cfb99952e3f2d60ab
1
reduz 106 Jan 04, 2014 at 03:23

Godot UI is really well integrated to the engine, i don’t think it can be separated, as that integration is what makes it so powerful (the whole Godot editorUI is programmed in Godot UI toolkit using the C++ API).

In response to reply on Math problem
88dc730f0f71e55be39de0ad103bd9ff
0
Alienizer 109 Jan 04, 2014 at 02:03

I found a solution some place on the net, the problem is exactly the same as the “Ladders in the alley” problem. Here is the way to solve it. I tried to understand the way it’s done, but I can’t. The author is unknown and left no explanation at all (maybe it was Einstein LOL). Do you think you are capable enough to understand it?

a = longest ladder.
b = shortest ladder.
c = ladders crossing height.

Problem = solve distance between ladders at the base.

a=119

b=70

c=30

d=a^2-b^2

f=2*c^2*d*sqrt(d^2/27+c^4)

g=d^3/27+2*c^4*d

h=d/3+(g+f)^(1/3)+(g-f)^(1/3)

j=sqrt(c^2-d+h)

k=sqrt((2*c*d+2*c^3)/j+2*c^2-d-h)

m=(c+j+k)/2

dist = sqrt(b^2-m^2)
56
Ceee4d1295c32a0c1c08a9eae8c9459d
0
v71 105 Jan 03, 2014 at 23:42

What did you use as gui ? it looks pretty clean and powerfull, can it be extracted and used as a standalone gui ?

In response to reply on Math problem
A8433b04cb41dd57113740b779f61acb
0
Reedbeta 167 Jan 03, 2014 at 22:13

There’s three equations in my post, and the three unknowns are alpha, beta, and C. You know A and B. Of course C is the only one you care about, but my point is there are three equations and three unknowns, so it should be solvable. It is not a linear equation or a quadratic one, so it would have to be solved by substitution. You could use trig identities to eliminate the trig functions, expressing cos in terms of tan or vice versa. I tried putting it into Maxima to solve but it did not come up with a result. That might only be because Maxima isn’t smart enough to do it.

In response to reply on Math problem
88dc730f0f71e55be39de0ad103bd9ff
0
Alienizer 109 Jan 03, 2014 at 21:47

That’s 3 separate equations, and Stainless’ equation uses 2 unknown and 1 known, unsolvable. Yours is the same, 1 known and 1 unknown, still unsolvable. Each of the 3 equations can’t really be incorporated together can they?. Would the quadratic equation be useful here?

C3b6f4f7af5ac965836a3cdfc5c449a9
0
Nathan2222 101 Jan 03, 2014 at 20:47

Ok. Khan will have to do.

In response to reply on Math problem
A8433b04cb41dd57113740b779f61acb
0
Reedbeta 167 Jan 03, 2014 at 20:27

You have also C = A*cos(alpha) and C = B*cos(beta). Together with Stainless’ equation C = 10/tan(beta) + 10/tan(alpha), that’s three equations in three unknowns, so should be solvable, in principle.

Welcome to DevMaster, a community-driven game development website of posts and resources!

Recent Tags

indie × 5
game-development × 5
ios × 3
android × 3
algorithm × 1
effects × 1
physics × 1
iphone × 1
c# × 1
mobile × 1
physics-engines × 1
native × 1
macos × 1
sound × 1
music × 1
networking × 1
testing × 1
multiplayer × 1
design-patterns × 1
game-programming × 1
3d-engine × 1
shaders × 1
cross-platform × 1
gaming × 1
game-industry × 1