[ home / board list / faq / random / create / bans / search / manage / irc ] [ ]

/agdg/ - Amateur Game Development General

AGDG - The Board

Catalog

The next generation of Infinity is here (discussion) (contribute)
A message from @CodeMonkeyZ, 2ch lead developer: "How Hiroyuki Nishimura will sell 4chan data"
Advertise on this site
Name
Email
Subject
Comment *
File
* = required field[▶ Show post options & limits]
Confused? See the FAQ.
Embed
(replaces files and can be used instead)
Oekaki
Show oekaki applet
(replaces files and can be used instead)
Options
dicesidesmodifier
Password (For file and post deletion.)

Allowed file types:jpg, jpeg, gif, png, webm, mp4, swf, pdf
Max filesize is 8 MB.
Max image dimensions are 10000 x 10000.
You may upload 5 per post.


Welcome to AGDG, have you ever made a game?
See also: /ideaguy/ | /vm/

File: 1438280396640.png (1.21 MB, 1920x1080, 16:9, Shio1.png)

780af5 No.20368

Can anyone recommend a physics engine that's:

-pure C/C++

-open source

-small codebase (all I want is input data, give time delta, return done)

That rules out PhysX and Havok.

Tokamak is abandoned.

Bullet is a huge codebase and steadily growing.

Which leaves Newton... which is the worst of the bunch.

Anyone know of any other options?

6ed3f4 No.20372

>>20368

Open Dynamics Engine.

It's powerful enough to be used in AAA games like Bloodrayne, and simple enough to power indie games like World of Goo.


e1cc81 No.20416

Write your own 3D physics engine, jesus, this generation of programmers are so weak minded cuck millennials, you just want to use other people's work and claim as your own, JESUS.

I'm 25 years old btw

KILL

YOUR

SELF

FEGGET

FIGGET

FUGGET

MUGGET

REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE

It's not hard to code physics, this is how you check for collision:

if (obj1.x + obj1.width > obj2.x + obj2.width && obj2.y + obj2.height < obj2.y + obj2.height)

{

// collision happens!

}

See? It's not hard

Learn

To

Physics

XZY

123

2 > 1

It's simple as that. I wonder what is the mental age of you people here.


e64dde No.20417

Why do you even need physics these days. Most games don't even need that, and when it is needed, only really simple shit like kinematics. That shit's taught in 4th of ESO, for fuck's sake. Quake simulated forces half decently, and the only thing it did was calculate the distance to the center of the explosion and apply a velocity vector correspondent to it to the player controller. No special prefabricated whatever fancy shit.

Also >>20416 is mad in his head. Don't listen to him.


c1237f No.20423

>>20416

>Write your own

>Provides the most naive implementation for physics collision

You're a moron.

To answer op's question, there isn't a good answer. ODE is smaller than Bullet, but getting there, Newton is probably the smallest, but like you said, it may not meet all your needs; but don't rule it out just because it's the simplest, if all you need is simple collisions, it might work for you.

I would be careful if I were you to not conflate codebase size with complexity, even though bullet is huge, it's really easy to use for most use cases.


68d000 No.20488

>>20368

unigine


b4d8fa No.20490

>>20416

>Yells op for not coding like hero's

>Use GML


b65479 No.20500

File: 1438487866504.gif (613 KB, 600x231, 200:77, shiggydiggydoo.gif)

>>20416

HAHAHAHAHA OH WOW

>Write your own 3D physics engine

>provides an example of collisions in 2d physics written in GML


64c8a7 No.20582

>>20368

Bullet

>>20416

> weak minded cuck millennials

>I'm 25 years old btw

>you want to use other peoples work and claim it as your own

>that code

>FEGGET

>It's simple as that. I wonder what is the mental age of you people here.

>ironicshitposting.png


64c8a7 No.20583

>>20582

The only other option that isn't ODE would probably be to roll your own


68d000 No.20591

>>20368

also there is PAL, physics abstraction layer, it allows you to profile several libs and choose the right one


2daf88 No.20608

File: 1438722664458.jpg (36.92 KB, 340x565, 68:113, 1406101971748.jpg)

>>20416

>if (obj1.x + obj1.width > obj2.x + obj2.width && obj2.y + obj2.height < obj2.y + obj2.height)

>obj2.y + obj2.height < obj2.y + obj2.height

top fucking kek


d05ba3 No.20614

>>20417

>4th of Educación Secundaria Obligatoria

what the fuck is wrong with you


b4dcd7 No.20624

>>20416

Let say you mistyped and wanted to do that:


if (obj1.x + obj1.width > obj2.x + obj2.width && obj2.y + obj2.height < obj1.y + obj1.height)
{
// collision happens!
}

OK:


obj1.x = 5; obj1.width = 2; obj2.y = 5; obj2.height = 2;
obj2.x = 0; obj2.width = 1; obj2.y = 0; obj2.height = 1;
if (obj1.x + obj1.width > obj2.x + obj2.width && obj2.y + obj2.height < obj1.y + obj1.height)
//Give: if(5 + 2 > 0 + 1 && 0 + 1 < 5 + 2)
//if(7 > 1 && 1 < 7)
// if(true && true)
// if(true)
{
// collision happens!
}

For the neophytes, a real good test would be :


//Works only if the edges of the cubes are parallel to the axes X, Y or Z
//If rotation, you are doomed
// And I do an if just for the sake to be readable.
// In fact you do directly a return !(what I put in the if) or return (application of De Morgan's law)
function collide(obj1, obj2) {
if(
(obj1.x + obj1.width < obj2.x || obj1.x > obj2.x + obj2.width) ||
(obj1.y + obj1.length < obj2.y || obj1.y > obj2.y + obj2.length) ||
(obj1.z + obj1.height < obj2.z || obj1.y > obj2.z + obj2.height)
)
{
return false; //No collision
}
return true;
}

By the way, De Morgan's law is:


not(a or b) = not a and not b
not(a and b) = not a or not b

>TL;DR

>Learn how the tests are done, read the algorithms

>But use a framework to do that to avoid stupid errors


5e0918 No.20628

>>20416

> 3D physics engine

> is actually 2D

> Does not support rotation


6ed3f4 No.20636

>>20624

>By the way, De Morgan's law is:

Derp. The same as simplifying any other polynomial, except its in binary (boolean).

Let Not be (* -1).

-1( a + b ) == -1a + -1b;

I swear, people in CS are so fucking easy to impress. They're also so full of hubris they take ancient communicative properties of mathematics and rebrand them as their own laws just because the numeric domain is base 2.


cdfdc1 No.20639

>>20636

If you're a math major, you should know that you can't expect properties to hold for every single mathematical object you use.

For instance:

xy = yx

That equation holds when x and y are numbers. But when they're matrices, it doesn't always work.


508ea6 No.20656

>>20636

>they take ancient communicative properties of mathematics and rebrand them as their own laws just because the numeric domain is base 2.

Fucking hell m8, de morgan was a mathematician working on creating propositional logic nearly 200 years ago along with Boole.

>Let Not be (* -1).

You seem to have missed that the and became an or and vice versa

If you want de morgans laws stated in math the following is how Halmos did it:

(A ∪ B)′ = A′ ∩ B′

(A ∩ B)′ = A′ ∪ B′

>communicative

kek, de morgans laws aren't simply restating commutative laws.

>implying propositional logic is base-2 arithmetic

Oy vey, read some set theory m8.


508ea6 No.20662

>>20656

inb4 >implying a universe, you fucking know what Halmos meant by complement


508ea6 No.20666

>>20416

>>20624

>>20628

>implying boxes

God is a sphere, get over yourselves.

I thought that that one god is a cube guy was a lone nutter, but I seem to have stumbled into some fucking box cult.

If you find your collision detection doing anything other than finding the distance between two points and comparing it to the sum of the radii then you dun fucked up and best repent as soon as you can lest you die in a state of sin.

You're perceived 'need' for boxes (and indeed, any non-spheres) is illusory and merely a product of your imperfect senses.

Being as round as I am, while far from spherical, I can perhaps aid you in realising your true need for a sphere.

Feel free to post your box-related problems here and I'll try to help you round them out a little.

Pic related is an animation with a framerate of \omega_{0} fps, showing perfectly without ambiguity a projection of a rotating Ω-sphere onto the plane. Behold, god.

corners are the devils work, do not be lulled by the edged and corners of your desire and sin, repent and accept the perfection of god-sphere

god.svg:


<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- REPENT YOUR SQUARE WAYS SINNERS -->

<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
width="100%"
height="100%"
id="svg2"
version="1.1">
<circle id="god" cx="50%" cy="50%" r="40%" stroke="black" stroke-width="3" fill="black" />
</svg>


b4dcd7 No.20668

File: 1438827291108.png (13.54 KB, 333x257, 333:257, Save me.png)

>>20666

> trip 6

> says God is a sphere

Everybody, big news: God is a Cube but Satan is a Sphere.

Don't try to manipulate us, demon!

> And when I post it, pic related


508ea6 No.20669

File: 1438829406379.jpg (4.89 MB, 3001x4104, 3001:4104, Michelangelo_Buonarroti_-_….jpg)

>>20668

>literally a box cult

I would beseech any bona fides readers to remember that in this haven of jagged and sunken flesh the mods exercise downright angular powers over us poor projected ellipsoids.

With one word they drive us to have higher eccentricity on the major axis, and with controlled opposition they drive to the same on the minor axis; leading to two factions at the extremes of high and low angles. Thus they divide the population and hide the truth of balance, that we must not seek low angles or high angles, but rather balance with god and an eccentricity of 0.

By creating this warring opposition, they erase the middle option of the public logos hiding the truth under the rubric of taking ideas to their "logical conclusion", an intellectually corrupt and bankrupt form of sophistry designed and calculated to decieve.

Hearken not to Screwtape or his infernal allies which present as his enemies; make no mistake their aim is the same and they drink to your eccentricity.

Do you not see his own corruption that he holds up as a false-mirror? Lo! But the mirror is painted over; we see only his own soul bared; what tattered shreds of corners remain. For with jagged edges did tear at the selfsame soul of which they first formed, as it writhed in the agony of heresy and turning away from god. And though he started with but small tears, the agitation thus caused led to those tears spreading, and so it is now that we see him; this twisted tangle of thorns.

Careful I warn you; go not into his arms. Know yourself, examine the genius; you will find god. For so perfect is he, without a single edge or corner, with in-finite rotational symmetry, incapable of he is being damaged. Such he remains eternal.

The way is clear, look back to those heretical days of yore when the words of satan didst twist and worm their way into the ears of devs and children as lowpoly games; look to your predecessors; ubi sunt qui ante nos fuerunt?

And of one to you little remains foul tempter, for with each edge and corner you harmed your soul a little more; yet to those yet in hope and grace I caution you vulnerant omnes, ultima necat.


780af5 No.20674

Playing with ODE and Newton now.

I might as well ask this as well;

Anyone know a good tutorial on 3D rotation physics?

I can do 2D sphere/square/tri but in 3D I'm lost.


92ed21 No.20705

>>20416

>just code your own 3d engine, pleb

>writes a 2d rectangle collision that doesn't even work

Please tell me this is b8.

>>20636

>Commutative

I think you mean distributive.

>>20656

>tfw latex is still broken


5b958a No.20716

i'd say bullet. i'm currently interested in studying bullet 3.x and its fully GPU-based collision detection and rigid body dynamics.

if you want to read about it, i'd recommend checking out Multithreading for Visual Effects.

i'm also interested in studying it, and openVDB/opensubdiv, alongside some ptex. it's all really interesting stuff. i probably wouldn't be making a game, but i am interested in getting a nice engine out of the way first. at the very least i can also design the gameplay mechanics on the side while i work out the kinks.

on a side note, is there any FOSS implementation of something like YEBIS for post, and openAL for 3D proximity audio doppler stuff?


756f27 No.22287


ba2767 No.22371

>>22287

>>That's an entire game engine, not just a physics engine

>>Inspired by Ogre? Just fuck my shit up!


ee7785 No.22384

GTA V used Bullet, so there is your answer.


4ced82 No.22387

>>20368

Pure C++

Wish I would have discovered "Game Coding Complete" last year instead of discovering the caveats of game design through trial, error, and autistic optimization.


4ced82 No.22388

>>22387

As in you could code that yourself with just the <chrono>

<math> or glm libraries

you need vector representation, bounding boxes based off of it for collision detection, centers of mass, constraints, energy transfer equations

here's somewhere to start it seems

http://www.wildbunny.co.uk/blog/2011/04/06/physics-engines-for-dummies/>>22387

also there is this thread

>>>/agdg/17387


568d24 No.22389

>>20416

This is seriously the BEST response in the entire thread.

Yeah the work is a little bit more, but it took me around 3 weeks to code my first engine and by the time it was done, I had already learned so much about programming, that doing simple shit like listening for input was menial.

>I got a job for a small studio after I put my game engine in my resume portfolia and now make 85k a year writing general backend code for systems.


a82893 No.22589

File: 1443683050912.gif (1.59 MB, 300x162, 50:27, 1373572258413.gif)

>mfw Bullet documentation

I quit implementing it a week in. Fuck awful.


b01577 No.22596

>>22389

>but it took me around 3 weeks to code my first engine and by the time it was done

Show it to me, put it on github


6f7932 No.22647

>>22589

Bullet is super easy to use.




[Return][Go to top][Catalog][Post a Reply]
Delete Post [ ]
[]
[ home / board list / faq / random / create / bans / search / manage / irc ] [ ]