[QUOTE=Ziks;48893189]Started work on some little NPCs:
[vid]http://files.facepunch.com/ziks/2015/October/13/2015-10-13-1440-03.mp4[/vid][/QUOTE]
Love the bounce! I think that's what makes them awesome, is that an animation sequence or programmed movement?
[QUOTE=bunguer;48895630]Love the bounce! I think that's what makes them awesome, is that an animation sequence or programmed movement?[/QUOTE]
It's just using a sine wave for rotation, and abs(sine) for vertical offset:
[code] protected override void OnUpdate()
{
if (Transform.Position.Y < -4f)
{
DestroyEntity();
return;
}
if (!_groundAgent.IsMoving || !_groundAgent.Physics.IsGrounded) _animWeight -= _animWeight*0.25f;
else _animWeight += (1f - _animWeight)*0.25f;
var lateralVel = _groundAgent.Physics.Velocity*new Vector(1f, 0f, 1f);
_animProgress += (lateralVel.Length / _groundAgent.MoveSpeed) * World.DeltaTime;
var sin = MathF.Sin(_animProgress*MathF.TwoPi*3f);
_inner.LocalPosition = Vector.UnitY/64f*Math.Abs(sin) *_animWeight;
_inner.LocalRotation = Quaternion.AxisAngle(Vector.UnitZ, 6f*sin*_animWeight);
}[/code]
its gmod 9 all over again
[QUOTE=Tommyx50;48894550]I hope you don't use machine learning for this or eventually your ant-killing machine will ultimately realise that all organic matter is a parasite upon the universe
I mean to a robot the entire Earth is an anthill[/QUOTE]
For a robot to jump to such a conclusion and ultimately decide that human lives mean nothing would require the robot to be ignorant, which says an awful lot more about humans than it does the machine. :v:
[QUOTE=Rocket;48896358]maybe it's ignorant of humans to assume that human lives mean something
[img]http://i.somethingawful.com/forumsystem/emoticons/emot-350.gif[/img][/QUOTE]
In the grand scheme of moral principles, it's generally accepted that taking the life of another being is wrong, even when asked to do so (which is a gray area, but safer to leave that to humans to decide since we're clearly experts on morality :vs:).
Using Eclipse I managed to compile and run my engine/game on Ubuntu/Linux inside VirtualBox. I have little experience using Eclipse, virtual machines and not to mention Linux, but it works more or less:
- I can't load shaders and make FBOs, but that is probably because VirtualBox only supports OpenGL 2.1.
- FMOD doesn't work in the game and even the examples provided with the API don't work. It plays a sound for only one frame and turns it off. It could be a problem with the library, the way I installed the library, or the audio drivers in VirtualBox.
- Game crashes randomly.
I will have to install Ubuntu on my real PC to do further testing.
[IMG]http://i.imgur.com/2L74EOc.jpg[/IMG]
[QUOTE=Rocket;48896449]A robot could decide that humans should be exterminated in the same way that humans have throughout history decided that people who aren't like them should be exterminated, and it wouldn't be any less moral, just less moral to us.[/QUOTE]
This depends on if one can justify such killings, which, far more often than not (if not at all), when actual logic is applied without emotions being involved, you can't.
[QUOTE=Zero-Point;48896344]For a robot to jump to such a conclusion and ultimately decide that human lives mean nothing would require the robot to be ignorant, which says an awful lot more about humans than it does the machine. :v:[/QUOTE]
Who says human lives aren't as meaningless as an ants? Maybe our entire universe is just a molecule of some other smart-ass beast thinking it's the coolest thing in the universe
To be fair, I imagine that a robot programmed to kill ants would decide that we're pretty efficient ant-killing machines ourselves, and let us live. Either that or it'd think that perhaps it could kill ants more effectively by melting us down and using us as fuel...
Still haven't put any work on my spatial partitioning crap. Undecided if I should let the objects loop through cells for other objects, or if I should let the spatial partioning class do it. I'm thinking the objects with cell knowledge would be the best way to do it.
[QUOTE=false prophet;48896951]Still haven't put any work on my spatial partitioning crap. Undecided if I should let the objects loop through cells for other objects, or if I should let the spatial partioning class do it. I'm thinking the objects with cell knowledge would be the best way to do it.[/QUOTE]
I just have a simple function that creates a full list of potential collisions when given a position and radius. It probably takes up a tiny bit more memory since you'd need to construct an extra array of pointers to the objects (or some other form of id) instead of just passing along the existing cell arrays, but I doubt it really costs anything. It's cleaner, either way, and could allow for more versatile queries in the future (i.e, ray checks).
[editline]14th October 2015[/editline]
[QUOTE=Rocket;48897002]Well, let's look at this from a robot's perspective.
Humans don't do much the benefit people other than humans. Humans create relationships, but that only benefits humans. Humans create art, discover more about our universe, create items of value - for other humans.
On the other hand, humans do a lot that hurts things. Not to get all preachy over here, but we're destroying the ecosystem, we're killing plants and animals by the billions, and we're killing other humans.
So if you look at this from a robot's perspective, we're basically the evil alien race from a sci-fi movie: we're an evil, warlike race that destroys everything it comes in contact with. We're expanding, and eventually we'll come in contact with life elsewhere, and do the same there. So the robot decides that, to save all other life, you have to kill humans.
That's my Matrix headcannon.[/QUOTE]
You could also look at it from this perspective:
The robot realises that ultimately the sun will explode or we'll all kill ourselves or that the universe will eventually become a massive blog of no variance (as we can't reverse entropy), and that ultimately we're just another organic lifeform along for the ride.
I mean, we aren't all that different. Other species and events have been more destructive than us, long long ago, we just like to make ourselves look like the big guys because we're clever.
It's not like one day we popped up in a perfectly balanced world and started destroying everything. Nature has always been a massively fickle thing, and entire species can go extinct from the tiniest changes in ecosystem. It's not like other animals think to themselves, "whoa guys, we're going a bit far, better stop hunting!" - they'd do the same as us if only they could. And, well, many other species [I]have[/I], many times before.
[QUOTE=Tommyx50;48896950]Who says human lives aren't as meaningless as an ants? Maybe our entire universe is just a molecule of some other smart-ass beast thinking it's the coolest thing in the universe
To be fair, I imagine that a robot programmed to kill ants would decide that we're pretty efficient ant-killing machines ourselves, and let us live. Either that or it'd think that perhaps it could kill ants more effectively by melting us down and using us as fuel...[/QUOTE]
Robots using us as fuel is a bit of a stretch, and it depends on the intelligence level of the machine and how far you allow it to go. Why wouldn't a sophisticated machine capable of logic and reason rather engineer a solution that diverts or relocates the ants without killing them?
[QUOTE=Rocket;48897002]Well, let's look at this from a robot's perspective.
Humans don't do much the benefit people other than humans. Humans create relationships, but that only benefits humans. Humans create art, discover more about our universe, create items of value - for other humans.
On the other hand, humans do a lot that hurts things. Not to get all preachy over here, but we're destroying the ecosystem, we're killing plants and animals by the billions, and we're killing other humans.
So if you look at this from a robot's perspective, we're basically the evil alien race from a sci-fi movie: we're an evil, warlike race that destroys everything it comes in contact with. We're expanding, and eventually we'll come in contact with life elsewhere, and do the same there. So the robot decides that, to save all other life, you have to kill humans.
That's my Matrix headcannon.[/QUOTE]
You're accusing a logical device (stereo-typically cold logic, usually) of making a blanket generalization? If the machine is aware of instances of both good and bad, and knows that such principles are something that are learned, and that humans are essentially learning machines, it would be of better benefit to the machines to aid our development for mutual benefit.
It's a bit naive to project human morality on to a robot. We are hard wired for empathy and morality because it's evolutionarily beneficial. Robots aren't.
For over a week now I've been working on shadows. I've encountered strange bugs, but I've just figured out a work around, allowing me to at least demonstrate how many of them look when combined together in a scene:
[vid]http://webm.host/caf85/vid.webm[/vid]
I added a new move to the Goliath Boss: Bone Spitting as suggest by AntonioR.
[video=youtube;Y5b_hGxTCBk]http://www.youtube.com/watch?v=Y5b_hGxTCBk[/video]
After eating a zombie, he spits out a bunch of bones and finally the skull (which packs a bigger punch). If another zombie walks in front of him while he's spitting, he'll eat them as well and continue spitting, leaving the skulls for last.
[QUOTE=Torrunt;48898830]I added a new move to the Goliath Boss: Bone Spitting as suggest by AntonioR.
[video=youtube;Y5b_hGxTCBk]http://www.youtube.com/watch?v=Y5b_hGxTCBk[/video]
After eating a zombie, he spits out a bunch of bones and finally the skull (which packs a bigger punch). If another zombie walks in front of him while he's spitting, he'll eat them as well and continue spitting, leaving the skulls for last.[/QUOTE]
That's great
Please make it a player-usable gun as well
[QUOTE=Zero-Point;48897649]Robots using us as fuel is a bit of a stretch.[/QUOTE]
Yeah, it sounds a bit far fetched. Using another species by letting them live and eat raw material, but basically dumping and wasting 90% of the energy and nutrients. Also providing them with conditions that they can live in only to one day kill them and reap measly rewards.
Wait a second...
Well, I put off spatial partioning for another night it seems. But I did make a grid thing that makes objects snap to the level boundary.
[vid]http://anotherprophecy.com/webm/gridy.webm[/vid]
The video of my second CppCon 2015 talk is now available!
[media]http://www.youtube.com/watch?v=2l83JlqkzBk[/media]
The talk analyzes a very interesting and cryptic C++11 code snippet originally posted on Twitter by Sean Parent (which allows to call a function on a variable number of arguments), and shows how to generalize it even further. It also covers C++17 fold expressions.
Enjoy!
---
I'm also still fighting against OpenGL ES2.0 and experimenting with sprite batching, and I would like some ideas on how to optimize it.
I tried two approaches:
1) Call `glDrawElements` once per sprite, passing MVP, color and texture as uniforms. Draws around 50000 sprites at 60FPS on my desktop, 10000 sprites on Emscripten.
2) Call `glDrawElements` for N sprites, passing MVP and color as [B]attributes[/B], and texture as uniform. It seems slightly faster than the older approach, but not by much. Also, sending the same matrix four times seems... weird.
What is the most efficient way of batching sprites that all have a different MVP matrix and different color (but same texture)?
[QUOTE=deyoppe;48898983]That's great
Please make it a player-usable gun as well[/QUOTE]
A gun that shoots out bones? Well I did have an idea about having a blunderbuss type weapon. I just thought about it some more and came up with an idea that might be cool:
It could act like a vacuum to get ammo, sucking in zombies in a cone in front of the gun. Ripping their limbs off and eventually sucking in the whole zombie. When shot it will shoot out bones, blood and other gibs based on what body parts it sucked in. Would have to be some sort of super power-up weapon.
[QUOTE=SupahVee;48899163]
I'm also still fighting against OpenGL ES2.0 and experimenting with sprite batching, and I would like some ideas on how to optimize it.
I tried two approaches:
1) Call `glDrawElements` once per sprite, passing MVP, color and texture as uniforms. Draws around 50000 sprites at 60FPS on my desktop, 10000 sprites on Emscripten.
2) Call `glDrawElements` for N sprites, passing MVP and color as [B]attributes[/B], and texture as uniform. It seems slightly faster than the older approach, but not by much. Also, sending the same matrix four times seems... weird.
What is the most efficient way of batching sprites that all have a different MVP matrix and different color (but same texture)?[/QUOTE]
I store sprite as a struct with position, color, UV, etc. And pass that to a geometry shader to output the sprite shapes
[editline]14th October 2015[/editline]
Oh does OpenGL ES even have a geometry shader?
I've decided to make a game using the [URL="http://www.defold.com/"]Defold[/URL] engine posted earlier, just made click to move and camera.
[video=youtube;N7PdedO_hFA]https://www.youtube.com/watch?v=N7PdedO_hFA[/video]
The engine still needs a lot of work, but so far has been alright. There is definitely a lot of improvements needed, I hope they continue developing this engine as it is great so far, considering it's beta and everything.
[QUOTE=Torrunt;48899281]A gun that shoots out bones? Well I did have an idea about having a blunderbuss type weapon. I just thought about it some more and came up with an idea that might be cool:
It could act like a vacuum to get ammo, sucking in zombies in a cone in front of the gun. Ripping their limbs off and eventually sucking in the whole zombie. When shot it will shoot out bones, blood and other gibs based on what body parts it sucked in. Would have to be some sort of super power-up weapon.[/QUOTE]
Ratchet and clank had a similar weapon that sucked small enough items and enemies and would fire them when releasing the trigger
It was a fun weapon although a bit weak
[QUOTE=Torrunt;48898830]I added a new move to the Goliath Boss: Bone Spitting as suggest by AntonioR.
[video=youtube;Y5b_hGxTCBk]http://www.youtube.com/watch?v=Y5b_hGxTCBk[/video]
After eating a zombie, he spits out a bunch of bones and finally the skull (which packs a bigger punch). If another zombie walks in front of him while he's spitting, he'll eat them as well and continue spitting, leaving the skulls for last.[/QUOTE]
Oh, you remembered it. I'm so proud right now.
[vid]http://s1.webmshare.com/qobq3.webm [/vid]
still pretty work in progress but started having some fun with particles
[QUOTE=Torrunt;48898830]I added a new move to the Goliath Boss: Bone Spitting as suggest by AntonioR.
[video=youtube;Y5b_hGxTCBk]http://www.youtube.com/watch?v=Y5b_hGxTCBk[/video]
After eating a zombie, he spits out a bunch of bones and finally the skull (which packs a bigger punch). If another zombie walks in front of him while he's spitting, he'll eat them as well and continue spitting, leaving the skulls for last.[/QUOTE]
Is there already a downloadable version?
thx
[QUOTE=Zero-Point;48897649]Robots using us as fuel is a bit of a stretch, and it depends on the intelligence level of the machine and how far you allow it to go. Why wouldn't a sophisticated machine capable of logic and reason rather engineer a solution that diverts or relocates the ants without killing them?[/QUOTE]
No, because it's being taught to kill ants. That's its purpose. The very thing that rewards it is the slaughter of ants. It has no empathy, it just wants to kill ants - not move ants, or divert them, but kill them.
That's the thing about machine learning that makes AI potentially so dangerous in real life. It isn't the concept of a malevolent robot - it's of an ignorant robot. That's the real danger, because an ignorant robot only cares about the task it's told to do.
If you gave a robot the task of collecting as much money as possible via stock trading, it isn't going to just "know" that some things are illegal or morally wrong. It'd brutally and efficiently use every tactic it could to get the money, because it's single goal is to collect more money.
Likewise, an ant-killing machine may see that the easiest and most efficient way of killing every ant would be to terraform the Earth into a place inhospitable for ants. Hell, even that's wrong. It's an ant [I]killing[/I] machine, it wants to kill ants, not simply get rid of them. It's ideal world isn't one without ants, it's ideal world is a world where it never runs out of ants to kill. It'd probably create a massive ant farm and breed as many ants as possible so it could continue killing more and more.
My player collision box is messed up.
When I crouch at the very bottom, the collision is the same as the normal player collision box. Meaning I can't go any further than the set collision for the standing up image.
[img]http://i.imgur.com/QRwFRJF.png[/img]
It seems to work with collisions that are above the bottom though.
[img]http://i.imgur.com/VK6HWe0.png[/img]
Does anyone have any idea's?
(I posted this in the WDYNHW thread as well)
[editline]14th October 2015[/editline]
Wait, I think it could be this that is interfering with it.
[code] if love.keyboard.isDown('up', 'w') then
if player.y > 0 then
player.y = player.y - (player.speed*dt)
end
elseif love.keyboard.isDown('down', 's') then
if player.y < (love.graphics.getHeight() - player.img:getHeight()) then
player.y = player.y + (player.speed*dt)
end
end
if love.keyboard.isDown('left', 'a') then
if player.x > 0 then
player.x = player.x - (player.speed*dt)
end
elseif love.keyboard.isDown('right', 'd') then
if player.x < (love.graphics.getWidth() - player.img:getWidth()) then
player.x = player.x + (player.speed*dt)
end
end[/code]
Specifically
"if player.y < (love.graphics.getHeight() - player.img:getHeight()) then" and "if player.x < (love.graphics.getWidth() - player.img:getWidth()) then"
Ziks are you rewriting minecraft in C# so you can sell it to MS for a few billion dollars so they can decisively kill java
[t]http://i.imgur.com/h06in8f.png[/t][t]http://i.imgur.com/oDGIV1V.gif[/t]
Continually making art assests and putting off the code gdi
[QUOTE=Handsome Matt;48900636]they already have it rewritten in c++ as a shared code base for all platforms[/QUOTE]
Really? I haven't played Minecraft in a while; have they released that as the main product? Does it still run on JVM? Can you write C++ for JVM?
[editline]14th October 2015[/editline]
Like how does that work?
Sorry, you need to Log In to post a reply to this thread.