I posted this in what do you need help with and got no reply so I thought I'd try here
In OpenGL if I'm going to have a lot of objects that share a mesh but have different properties (position, rotation, scale, texture, color) would it be advisable to create a single Vertex Buffer for the mesh and call a draw for every object that uses it and pass the properties to the shader via uniforms?
[QUOTE=Stents*;46642619]I posted this in what do you need help with and got no reply so I thought I'd try here
In OpenGL if I'm going to have a lot of objects that share a mesh but have different properties (position, rotation, scale, texture, color) would it be advisable to create a single Vertex Buffer for the mesh and call a draw for every object that uses it and pass the properties to the shader via uniforms?[/QUOTE]
Do these objects move around at all or are they static?
[QUOTE=Frechetta93;46642633]Do these objects move around at all or are they static?[/QUOTE]
Yes they do move.
[QUOTE=Stents*;46642619]I posted this in what do you need help with and got no reply so I thought I'd try here
In OpenGL if I'm going to have a lot of objects that share a mesh but have different properties (position, rotation, scale, texture, color) would it be advisable to create a single Vertex Buffer for the mesh and call a draw for every object that uses it and pass the properties to the shader via uniforms?[/QUOTE]
if you don't modify the data (vertex buffers) per object then yes
it saves you time on the cpu to switch between the buffers, and you can do the same for textures as well
[QUOTE=Stents*;46642619]I posted this in what do you need help with and got no reply so I thought I'd try here
In OpenGL if I'm going to have a lot of objects that share a mesh but have different properties (position, rotation, scale, texture, color) would it be advisable to create a single Vertex Buffer for the mesh and call a draw for every object that uses it and pass the properties to the shader via uniforms?[/QUOTE]
Yeah that's fine. Depending on how many you have and your overall load on the GPU you might want to use instanced rendering, because draw calls are fairly expensive.
[QUOTE=Stents*;46642619]I posted this in what do you need help with and got no reply so I thought I'd try here
In OpenGL if I'm going to have a lot of objects that share a mesh but have different properties (position, rotation, scale, texture, color) would it be advisable to create a single Vertex Buffer for the mesh and call a draw for every object that uses it and pass the properties to the shader via uniforms?[/QUOTE]
That is generally the way it's handled, it gets a bit more complex for non trivial cases like instancing.
There's no point in uploading the same vertex data more than once (in fact, it's a waste of bandwidth and memory resources) and to also be switching between buffers holding the same base model over and over again.
per-object transformation are usually just passed to the shader in the form of a 4x4 Matrix (there are other ways, such as building a matrix in the vertex shader, or applying some other transformation to the vertex data, but uploading a matrix is usually the easiest way to go), the same is true of any other properties that can vary per object such as texture, or colours; they can be controlled by either uniforms or other state (such as the active texture).
In more advanced cases, you can use instancing to provide all of this data at once and do it on the GPU. For example you could have a Uniform Buffer Object which contains data for a Uniform Block like
[code]
layout(binding=0,std140) uniform Object
{
mat4 transform;
vec3 tint;
};
[/code]
and upload the data for all objects sharing a mesh at once, and issue a single (or, at least less) draw calls.
tl;dr yes.
[QUOTE=Parakon;46641690]i'm working on stuff,
real BIG things.[/QUOTE]
[IMG]http://i1095.photobucket.com/albums/i469/sarge997/SlyFox.png[/IMG]
Not really working on, as I'm not going to continue working on this, but I decided to see how feasible it was to use TinyCC for C scripts by doing what we all know is the ultimate test for scripting languages: Make it run a roguelike. In this case, I decided on the original curses-based game from version 5.4.4. Found a github repo, cloned it, and added this
[code]
#!/bin/sh
# This is a simple example of runnable C scripts as games.
# works surprisingly good.
FILES="vers.c extern.c armor.c chase.c command.c daemon.c daemons.c fight.c
init.c io.c list.c mach_dep.c main.c mdport.c misc.c monsters.c move.c
new_level.c options.c pack.c passages.c potions.c rings.c rip.c rooms.c save.c
scrolls.c state.c sticks.c things.c weapons.c wizard.c xcrypt.c"
tcc -lcurses -I. $FILES -run
[/code]
as rogue.sh. Running that file simply launches the game almost instantly, and certainly instantly once it has been done more than once. The slowest result I've had was when doing other stuff where it actually took just less than 2 seconds until the game had launched, but on average the "launch time" (compile time really) is about 0.182s.
[QUOTE=Parakon;46641690]i'm working on stuff,
real BIG things.[/QUOTE]
Leaked code:
[code]
public class Thing{
public Thing() {
}
}
public class Big : Thing {
public Big() {
}
}
Big[] bigThings = new Big[3];
[/code]
I'm working on a functional component system.
It uses typed heterogeneous lists to store components. This allows extreme flexibility as anything can be a component and since you don't lose the type data (as you would in a language with a weaker type system), you can make functions that operate only on entities that have the required components.
Here's a simple example
[code]ent1 = entity `with` (1 :: Int) `with` (2.5 :: Double)
updater1 = Updater (+1) :: Updater Int
updater2 = Updater (+2) :: Updater Double
ent2 = ent1 `with` updater1 `with` updater2[/code]
Here, if you would print out ent2 it would look like "Entity <Updater Double, Updater Int, 2.5, 1>".
Now, because ent2 has a component of the "Updater a" type, you can call updateEnt on it. The result printed will look like "Entity <Updater Double, Updater Int, 4.5, 2>".
Each of those two updater components operate only on it's designated type so the Double component increased by 2 and the Int component only increased by 1.
We got Greenlit :)
[url]http://steamcommunity.com/sharedfiles/filedetails/?id=345470172[/url]
[QUOTE=Electroholic;46645932]We got Greenlit :)
[url]http://steamcommunity.com/sharedfiles/filedetails/?id=345470172[/url][/QUOTE]
Accurate avatar
I made planet
[img]https://dl.dropboxusercontent.com/s/7g03eu8ilgi0vhv/2014-12-05_14-46-31.png?dl=0[/img]
Unfortunately I'm not generating the assets, just stitching together and manipulating textures. But it's still kind of cool I think... I should be able to make a lot of cool looking combinations just by randomizing the textures it uses.
[vid]http://files.1337upload.net/Desktop_12.04.2014_-_23.09.13.03.webmhd-c84222.webm[/vid]
main menu
i really like how the transitions turned out
How did you make the sounds for your menu?
What engine are you using? That looks gorgeous.
[QUOTE=Ac!dL3ak;46647230]How did you make the sounds for your menu?[/QUOTE]
simspelaaja did them actually, you'll have to ask him
finn langham made the music, it's made in logic pro i believe
[QUOTE=Berkin;46647244]What engine are you using? That looks gorgeous.[/QUOTE]
thanks! believe it or not, it's source
[QUOTE=Ac!dL3ak;46647230]How did you make the sounds for your menu?[/QUOTE]
With FL Studio and its built-in 3xOsc synthesizer.
[QUOTE=DarKSunrise;46646996][vid]http://files.1337upload.net/Desktop_12.04.2014_-_23.09.13.03.webmhd-cde2a2.webm[/vid]
main menu
i really like how the transitions turned out[/QUOTE]
It doesn't play for me. I'm using Firefox. Help.
[QUOTE=AntonioR;46647330]It doesn't play for me. I'm using Firefox. Help.[/QUOTE]
uhh fuck
[url=http://www.indiedb.com/games/infra/videos/main-menu1]does this work[/url]
I'm on Chrome Mobile and it doesn't work on the thread, but it works on the linked page.
just tried on firefox
it skips to the end after it has loaded but you can skip to the middle of the video and it'll work
i think this is an issue with facepunch's video tags
[editline]6th December 2014[/editline]
nevermind, it was [url=http://stackoverflow.com/questions/13448832/webm-video-plays-in-chrome-and-opera-but-not-firefox/14580807#14580807]a ffmpeg bug[/url]
fixed
It just doesn't work at all on Chrome Mobile in the thread. Usually I have no problem playing videos.
[editline]5th December 2014[/editline]
Yep, working now.
You guys should enter this competition! It's about remaking VIRUS: The Game, a Descent clone with an RTS twist, using your computer's filesystem to build levels.
[video=youtube;iIgpWGVvfjA]http://www.youtube.com/watch?v=iIgpWGVvfjA[/video]
[url]http://almightybyron.co.uk/virusjam/[/url]
[QUOTE=Ott;46648265]You guys should enter this competition! It's about remaking VIRUS: The Game, a Descent clone with an RTS twist, using your computer's filesystem to build levels.
-snip-
[url]http://almightybyron.co.uk/virusjam/[/url][/QUOTE]
It better use my 1.5 tb porn folder
[QUOTE=Electroholic;46645932]We got Greenlit :)
[url]http://steamcommunity.com/sharedfiles/filedetails/?id=345470172[/url][/QUOTE]
Very cool, mate.
However, as a piece of friendly criticism, I highly recommend you have whoever is writing your updates be [b]damn[/b] sure to be professional about it. At the very least, try to enforce proper grammar, spelling, and capitalization.
Nothing screams "incompetent team" to me louder than a team whose official channel has poor grammar.
[quote=Page]Wow, [b]were[/b] finally greenlit[b], i'd[/b] like to thank EVERYONE[b],[/b] for voting. Now we [b]gotta[/b] work [b]even harder[/b].
You will see updates [b]thruout![/b][/quote]
This is inexcusable for even Middle-school level writing.
If you want people to think of you and your team as being intelligent and capable human beings, language is the first impression. If whoever is writing your announcements isn't a native English speaker, then relegate it to someone who is.
Honestly, if I saw this and didn't know it was you, I would instantly have a very bad opinion from that alone, gameplay be damned.
Again, just some friendly advice.
[QUOTE=cwook;46648397]It better use my 1.5 tb porn folder[/QUOTE]
It better not touch my porn.
[QUOTE=Ott;46648265]You guys should enter this competition! It's about remaking VIRUS: The Game, a Descent clone with an RTS twist, using your computer's filesystem to build levels.
[video=youtube;iIgpWGVvfjA]http://www.youtube.com/watch?v=iIgpWGVvfjA[/video]
[url]http://almightybyron.co.uk/virusjam/[/url][/QUOTE]
Holy fuck, visiting this website just blew my headset with incredibly loud crackling noises. What the actual fuck man
[QUOTE=Gmod4ever;46648454]Very cool, mate.
However, as a piece of friendly criticism, I highly recommend you have whoever is writing your updates be [b]damn[/b] sure to be professional about it. At the very least, try to enforce proper grammar, spelling, and capitalization.
Nothing screams "incompetent team" to me louder than a team whose official channel has poor grammar.
This is inexcusable for even Middle-school level writing.
If you want people to think of you and your team as being intelligent and capable human beings, language is the first impression. If whoever is writing your announcements isn't a native English speaker, then relegate it to someone who is.
Honestly, if I saw this and didn't know it was you, I would instantly have a very bad opinion from that alone, gameplay be damned.
Again, just some friendly advice.[/QUOTE]
*coughs* That was my fault. I was on a bit of a HIGH note, Thanks for the correction, now that it has settled down, I can see a little more clearly.
Sorry, you need to Log In to post a reply to this thread.