« first day (887 days earlier)      last day (4430 days later) » 

05:00
Ah, I see.
but just wrapping crap where it's owned in ComPtr means you don't have to remember to release it at the right time
Indeed.
texture goes out of scope? released by destructor :)
you don't have to use it, but it hasn't hurt me so far
November CTP, or are we doin' this old-school like the old-school?
either way is fine
old school until we need/want something from the CTP?
05:03
Oh
Giggles. Too late, it's already CTP. x3
VARIADICS 4 U
how do I tell VS again to not dump the sdf and whatnot in the solution dir?
Um
Tools -> Options -> SomethingSomething
there was an override dir option somewhere.
Text Editor -> C/C++
05:04
Advanced -> Fallback Location -> Always Use Fallback Location {To: True}, Do Not Warn if Fallback Location... {To: True}, Fallback Location {Something frivolous, like "D:\Visual Studio Scratchspace\"}
C:\TEMP :3
Roflmao. Like a boss.
or maybe I'll point it at the recycle bin, lol
Haha
Well, not quite.
C++ uses those, and the Recycle Bin is protected space.
You might blow up Visual Studio. :P
do you want to keep build files in a "build" folder or something?
by default it dumps crap everywhere, doesn't it :/
05:07
Right now I have almost all our includes / sources in {TopLevel}/SolarStar
Build files are currently in {TopLevel}. Could make a build dir, though, if it makes you feel better. :D
makes it easier to delete
I mean stuff like build outputs, object files etc
Mmkay
don't need them in the same location as the sources
By default, they don't be.
Visual Studio should seclude them off into Debug / Release folders in the Solution Directory, usually.
well, then I guess, whatever
05:08
Well, my solution is closed.
Move it if you like. :D
do you have precompiled headers on? or why do we have a giant include list :o
No precompiled headers.
I just made an empty project, so it's barebones-nothing.
I've never used PCH, you can turn it on if you like. But PCH has only given me major headaches.
doesn't including everything slow down compilation?
nah I don't know how to use it properly :p
We're only including standard headers: the compilation time will be swift. Just hit F7 and see.
Can I open the solution now?
yup
had a look around, but it's closed
05:11
Well, open it up again.
We both have to be editing it at the same time for this to be productive, silly. :P
will that be ok? I mean, what if you change something, compile, dropbox syncs...
I'll create a new Project / Solution Configuration
That way you can have Debug all to yourself, and I'll have PhD Debug all to myself.
heh, ok?
I see unicode is off
What this'll do is all my compilation files (object, linker, etc.) will go in a separate directory
means I can delete those stupid L prefixes
05:13
We're gonna turn tha tshit on, because UNicode Is Life.
...spoke to soon, lol
Haha. x3
Sorry, just. After using Unicode, don't want to go back.
Nooo ooo oooo can't go baaack
yeah I suppose
feel free to criticise my inconsistent naming of functions
ohmagerd, what's this
what are those macros at the top?
(#@b1) << 8
?!?!?
#@b1
Means you can type
charcc4(R ,I ,F, F)
And it will automatically turn them into chars
#@ is the Charizing Operator for Macros
okay O_o
05:20
These are just some
helpful platform defines and macros
do you prefer to link to D3DCompiler.lib etc in the project settings?
Usually, but it's too late for that now: we already got a #pragma lib comment, so it's all good
haha
I might move to to Platform.h, though
Just so if we need any libs or stuff, we just #include <SolarStar/Platform.h>
I forgot
how to tip the whole system off
that you're doing
WNDCLASSEXW stuff
05:25
And not WNDCLASSEXA
I use A so I don't have to use L"bla" xD
because wchar_ts are a pain if they're not literals :p
Well, this is just for Window Initialization
So we can do it so we can have fancy Japanese Solar God Names in our window title. :P
After that?
ASCIIASCIIASCIIASCII
ok, I'll change the constructor to take a ....LPTSTR? for the title
LPTSTR should become a LPWSTR with unicode, right
Just do std::wstring
No point make it hard on ourselves. :P
ok
feel free to change the default argument window title
I think we will need to link DXGI.lib also
05:31
Yerp
oh wow, this is spooky
I think by syncing stuff, I get your undoes
I ctrl+z'ed in Platform, and it undid the #pragma comment(lib s, even though you placed them there :o
Really?
Freaky. :O
Tools -> Options -> Environment -> Documents
Detect when file is changed outside the environment (and Auto-load changes, if saved)
no more asking boxes
Only if you've already saved the file.
if not, it'll ask.
that makes sense yea
"oh you were typing something? I'm sorry I just loaded it from the disk for you :D"
05:35
Lols
ok, changed some includes around
do you want to IM or do you want to keep talking here?
Well, I keep trying to type messages but it's telling me I'm dumping them out too fast. D:
I, uh. Don't really have any IM programs though, lmao.
What do?
haha
oh, also, you can throw your Texture class in there
Still trying to figure out how to use this GPUBuffer thingy
Also, what's this Front, at, back, etc. for?
it wraps a std::vector...sort of :D
05:42
OOH this GPUBuffer contains a std::vector of internal data
and automagically uploads it to the GPU
Shiny.
My texture class was a bit more... involved, I think.
but it also works for constant buffers, where it only contains a single item
well, this is only half implemented as you can see
but I haven't needed the other options yet
Mmmhmm, mmhmm.
Let's see here...
GPUBuffer<Vertex, D3D11_BIND_VERTEX_BUFFER, 0, 0, D3D11_USAGE_DEFAULT, BufferUsage::Forever> VertexBuffer;
this is how it would be used
where Vertex would be a vertex struct/class
and Forever means it never changes
05:45
Oof. All my thing requires a GraphicsResource, which requires another thing, which requires another thing...
Maybe I can strip some dependencies.
also, if you try to use GPUBuffer wrong it'll throw nice compile time errors at you :)
I hope.
Indeed, very nice static_asserts and all
basically just wrote down the notes for those parameters from MSDN
but I'm lazy and this way I don't have to look it up xD
Hehe
Any ideas for a messenger client?
well, pick anything
msn, icq, skype, trillian/astra
05:52
I have none of these things, so it's up to what you've got, really. :3
Also, you don't have a kind of
"GraphicsResource", do you? Where the constructor takes a holds a reference to a the Device and DeviceContext?
Or is that always by constructor?
not really
Alrighty, by constructor it is.
I just keep Device and DeviceContext in everything that needs it lol
do you inherit from GraphicsResource?
this "engine" is neither proven through practice nor was it planned/designed, so don't be afraid to suggest changes
05:56
Things like GpuBuffer, ShaderResource, etc. etc.
All inherit from GraphicsResource, so they always have access to it when they need it.
GraphicsResource takes a GraphicsDevice (Or in this case, D3dRenderer) by default
And keep a reference to it.
I don't expect a lot of GpuBuffer-based or Texture-based things floating around,
so the holding reference makes it easier to work with.
And the overhead is negligible, because you're not making 100000 texture/vertex/index buffers.
hehe
so does everything inherit from graphicsdevice, or does everyone keep a graphicsdevice?
Everyone keeps a reference (pointer) to GraphicsDevice.
They can then boil that down to whatever they need on their own (device->DeviceContext, device->Device)
To shock-update me, hit Ctrl + Shift + S
And it'll let me know the project has changed
and whip me into shape.
oops. F5 does not refresh the document. lol
06:06
x3
can you do that? address of the reference'd one you got as an argument? don't you like, get the address of a temporary or something?
If you pass something down by reference, then no temporaries are made.
If you pass something by value, then a a temporary is made.
References are meant to avoid copies.
hm, yeah, makes sense.
Oh shit, we have no entry point, haha.
yeah :)
which kinda man are you...WinMain or main() or main(int argc, char* argv[]) ?
06:09
The third. WinMain is for Windows GUI apps. We're making our own windows here.
:)
thankfully, my window class doesn't need the HINSTANCE
in fact, you can create a window with no arguments at all :p
though we probably want our own WndProc at some point
WndProc should be handled by the Window class.
To get messages we want, we'll add a NextMessage function on the Window class, so we can externally poll for events without worrying about the WndProc actions.
Ooh, you take a function pointer.
Savvy.
can change that though and define the WndProc as a class member
Naawww.
That's fine enough. Albeit, our WndProc will have to be a static function to work with that, but that's fine.
I've wrangled it to be a class member before :3
sort of. I think
06:15
Haha.
Well, it could get complicated fast if we do it that way.
stored a pointer to the window class instance inside the actual window
that way the static Wndproc had access to the window instances :p
And what happens when you make multiple windows? :P
each window has the class instance it belongs to stored inside it
there's some user memory in the win32 window
where you can stuff the pointer
so in the WndProc you know the hwnd of the window, and fetch the pointer from the window
but we can worry about multiple windows later :p
Mmhmm
so, where are we gonna put the entry point
06:20
Uh
Somewhere at the top, I guess!
lol
looks like it's all the way at the bottom :)
Heh
I added a D3DRenderer->Present() function
so you don't have to go digging through renderer->framebuffer->swapchain
ho window title without WndProc :S, let me move the arguments around :p
Good choice
lol I hope I didn't save while you were compiling
06:28
You did. :P
But I got it.
DUN DUN DUN DUUUHHH
Shiny bright window.
hmm, something is wrong
window doesn#t respond to anything
oh, right
no messagepump
^_^
did you copy that from somewhere? looks familiar lol
Hm?
the clear
Naw. I just made it up on the fly.
hehe
well, I guess not much you can do different
06:31
I can't imagine people would clear the color differently than that, though.
I tried initializing the array inside there, too, first
I don't really care which chat client/protocol you pick, I'll just use it inside trillian :)
Uh
Okay guess I gott amake an account somewhere.
I don't know which service asks for the least amount of personal data
microsoft probably knows everything about you anyway :p
Hum.
Alright
Trillian is... ... live
I'm...wait for it.... melak47
06:39
GASP
 
1 hour later…
07:59
any ANSI C experts here that could confirm I can't have my cake and eat it too? that is: you can't allocate a single contiguous multidimensional array that would require 2 mallocs and 2 frees?
08:10
2 mallocs & frees? o.O
08:21
as in, if you were trying to make a 4x4 matrix, one malloc for a float[16], and another malloc for a float*[4]
so you could iterate on i = 0..15, as well as access by your_matrix[3][2]
can you do something like that with a union? it would only have 1 malloc and free, but it might let you access both ways
wouldn't pointer locations overwrite the matrix data and vice versa?
?
both would operate on the same memory, isn#t that what you would want?
yes, but if i want to access via mat[x][y], that implies some sort of allocated arrays of pointers, right?
oh, hm.
could you...
08:28
fuckit. imma write indexer macros
matrices are float*s
union matrix
{
	struct
	{
		float row1[4];
		float row2[4];
		float row3[4];
		float row4[4];
	};

	float* mat[4] = {row1, row2, row3, row4};
};
I know you can't initialize like that in a struct, but initialize it so it has those values
via a pseudo constructor
would that work?
mat[0] would return a float*, so mat[0][0] would give you the fist one?
but no, that can't share the memory..
never mind, I give up, too
a sad day for matrices
i appreciate you helping out though. /cheers
just overload operator[]! :p
totes would. except for C. and i must remain pure
 
3 hours later…
12:01
union matrix{ float f[ 16 ]; float r[4][4]; };
problem?
:D
and now how do you get is so that matrix mat; mat[2] returns mat.f[2], and not mat.r[2]
@ToddersLegrande It is a new old gravatar. I had this 'round december - june of last year.
@melak47 overload the operator
mat[2] wouldn't return "mat.r[2]" anyway, though
matrix isn't an array/pointer type
12:16
@snake5 in C :p
you're using the wrong language
C isn't meant for writing custom syntactical sugar all day, that's what C++ is for. C is for getting shit done.
12:39
all hail C++!
did i ever told you about my language ReverseFuck? you write an inputs and an outputs, and genetic algorithms will try to produce a program in brainfuck :)
it works nice for programs like a + 1, and once i managed to make program that write "hello" (hello world is too long)
"genetic algorithms"?
yes?
In the computer science field of artificial intelligence, a genetic algorithm (GA) is a search heuristic that mimics the process of natural evolution. This heuristic is routinely used to generate useful solutions to optimization and search problems. Genetic algorithms belong to the larger class of evolutionary algorithms (EA), which generate solutions to optimization problems using techniques inspired by natural evolution, such as inheritance, mutation, selection, and crossover. Methodology In a genetic algorithm, a population of strings (called chromosomes or the genotype of the genom...
I don't see how they fit here
brainfuck instructions are genes, and fitness is determined by how does output correspond to desired ouput
12:51
o.0
the easiest algorithm is to discard input and just write ouput...
second easiest: do a diff and generate the brainfuck code based on the diff output
I really don't see how genetic algorithms fit here (but perhaps I'm just thinking with real-life constraints in mind)
game creatures, uses genetic algorithms to modify code that creatures has in brains, so it usable in "real world" :)
awesome game :)
13:06
hi..can any one elp me in box2d game?
help
@Kikaimaru that's a completely different set of requirements
and I'm not talking about "usability of genetic algorithms"
I'm talking about "usability of genetic algorithms in code generation"
13:24
@snake5 yes i do too
they generate code with genetic algorithms
13:50
@Kikaimaru what I'm saying is that it doesn't make sense, even if it's true
14:23
it is true, as you can see on that link, and it makes sense, since its used in working game
15:05
...
!?!
15:11
'"''"'""'"""'
>.>

<.<

>.<
we weren't doing faces... :(
Ah, my apologies
:D
15:16
(>'.')> <('.'<)
(>'.')----@(o.o)
(>'.')> V(x.x)V
Why is Kirby shooting at other Kirby?
punching
they're in smash bros or something. the other will wake up next round! :)
Reminds me of the original Digimon digipet things
When you would battle them it would just be little flame symbols whacking the other guy
Good times
15:40
:)
why the hell does typescript allow me to use non existing variables or overwrite my parameters with local variables....
use strict;
I think that will solve the non-existant variable problem
existent
hmm
ok with a second "e"
well as it turns out, the variable is actually existent, since there are some cool named global variables like "name"
:D
 
1 hour later…
17:14
Well MVC 4 is pretty awesome (disclaimer - I have little experience with versions prior)
And the ability for it to create the database on the fly just by adding more code to your model == awesome
I wonder how it actually handles changes to the database... like does it blow away the data, add some default data, or what
@Kikaimaru do you have a reversefuck implementation lying around anywhere on the internets?
I'd like to see that as well
is there some kind of backpropagation or is it mainly just applying mutators to previously "close" programs by output?
17:58
@michael.bartnett probably not it was too long ago
 
1 hour later…
19:32
To answer my own question before -> It can do automatic migrations or you can code your own migrations of the database changes when you make changes to your model. Pretty cool stuff!
 
1 hour later…
20:34
@ToddersLegrande I saw your question earlier, and that's what I thought it did, but I wasn't sure and I haven't messed with it a lot myself, so I didn't want to look a fool for saying either way
"It's better to remain silent and be thought a fool than to open your mouth and remove all doubt."
2
Mark Twain. great quote.
I like making guesses with disclaimers myself
1
A: How can unrealscript halt event handler execution after an arbitrary number of lines with no return or error?

ToddersLegrandeWhile I'd be very happy for someone else to come and give a more specific reason as I don't really have the facts to back up my claim, but it looks like this is a limitation of Broadcast. Alternatively you can write to the console or maybe update some UI elements depending on how you want to hand...

This was my favorite guess with a disclaimer if you check out my comment on the question
an he never even accepted it :(
have an upvote
20:59
lol thanks

« first day (887 days earlier)      last day (4430 days later) »