« first day (1691 days earlier)      last day (3332 days later) » 

Jon
9:01 PM
forcing my son to learn how to play the right way
 
hahaha
that's not the right way man
WERD
for FPS anyway
 
WASD
 
no
 
yes
 
Pip
yes
 
Jon
9:02 PM
WERD? you are sick
 
with werd you get more usable keys on the left
qas are now usable for other stuff
 
tfgh gets you even more usable keys on the left
 
and if you're not holding E lots of the time, what kind of weirdo are you?
and if you're holding E, it's more comforatble to strafe with w and r if they are beside the forward key, not offset vertically
lots of analysis went into this
:)
 
I believe you
 
Pip
QWER is alright, but not as nice as WASD imo
 
9:04 PM
but still WASD
 
Jon
wasd since the 90s
 
Pip
but WERD sucks imo
 
the WERD is the word
 
Jon
i ain't changing now
 
8 years of Q3 CTFS can't be wrong
 
Jon
9:04 PM
my son sure as hell ain't changing either
 
working through the unity droid plugin shit
not pleasant
 
Jon
man
my 7 year old son is so good at minecraft now
 
Pip
lol
 
Jon
he wins hunger games
 
9:05 PM
how can you be "good" at it?
 
Jon
24 player ffa
 
oh ok
:)
 
Jon
i watched him friend someone in hunger games
then kill them when they were not looking
 
hahaha
 
Jon
i was fucken proud
took all his gear
sometimes i play with him, and we team up
pretty much unstoppable
lol
 
Pip
9:08 PM
So, opinions on current build? You don't have to try if you're at work or whatevs
That caravan is going to be created on path generation in next version
 
Jon
if it is unity, why not a web build?
way easier.
 
Pip
Because that freaks out my RasPi :D
maybe on github if I can, hold on
 
anyone know what the deal with Foot Doctor was?
 
Pip
nope
 
Jon
I think it was Mick
I think mick was banned
oh wait he's here
who the fuck was that?
 
9:14 PM
@Almo yeah probably mick
Jeah that account was banned for a month as well, another of his sockpuppets
 
I don't see mick
 
Also banned
 
Jon
Yeah I think he got banned
and he said he was killing himself
which was pretty discomforting to read
if it was him
 
well, he's difficult, but I hope he doesn't do that.
 
Jeah
But footdoctor got banned for 29 days, which is the "You are evading a chatban"-ban
 
9:17 PM
so if UnityPlayer.UnitySendMessage is how to talk to unity from java, how when I'm building my java plugin does the compiler know about this thing?
 
Jon
you can't do that
only works inside of unity player
 
?
public class Util
{
  private static final String RECEIVER_NAME = "GCMReceiver";

  public static void sendMessage(String method, String message)
  {
    try
    {
      if (TextUtils.isEmpty(message))
        UnityPlayer.UnitySendMessage("GCMReceiver", method, "");
there's some code from a java plugin
 
Jon
oh.. yeah i think that is hardcoded into the unity api or something
 
but when I build the plugin, how does it know UnityPlayer even exists?
 
Jon
when you build for android, it spits out a bunch of java classes
maybe it links it
 
9:19 PM
but I have to build the java plugin seperately, then dump it into the unity project
 
Jon
in a plugins folder
 
you put .jar files into the untiy plugins/android folder
 
Jon
yeah unity knows about it
 
so how do I make the .jar of my plugin if it references UnityPlayer
like some "extern" type definition or something?
 
Jon
hmmm
you mean your plugin is using UnityPlayer?
 
9:21 PM
yeah, I want in my plugin to call UnityPlayer.UnitySendMessage
 
Jon
oh... in that case I have no idea.
 
the way the plugin does that I posted code from
 
Jon
My understanding was that sendmessage was to communicate with the plugin code
 
Pip
dafaq
Anyone ever had this happen?
 
using UnityEngine;
public class NewBehaviourScript : MonoBehaviour {

    void Start () {
        AndroidJNIHelper.debug = true;
        using (AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer")) {
            jc.CallStatic("UnitySendMessage", "Main Camera", "JavaMessage", "whoowhoo");
        }
    }

    void JavaMessage(string message) {
        Debug.Log("message from java: " + message);
    }
}
there's unity's example
it calls the java function UnitySendMessage, which then in turn calls JavaMessage in the C#
 
Jon
9:23 PM
hmmm
that is kinda reverse as to what you would use a plugin for though??
when i use plugins, it is to interface with android funtcions that unity can't do
 
the plugin will be a GCMReceiver, and when it gets a push notification, it will UnityPlayer.UnitySendMessage to send the incoming data from the notification into unity
 
Jon
ah
 
that's how the plugin I found for this does it. But I have to avoid looking too closly at the plugin, or I'll copy it, then there are licensing issues.
that's why I'm spending all this time reinventing the wheel :(
 
Pip
FUCKFUCKFUCKFUCKFUCK
FUCK
 
FLAGGED
just kidding :)
 
Jon
9:25 PM
:)
 
:D
 
Pip
omfg this is aweful
 
just like your spelling
 
Pip
I just did a git checkout --orphan gh-pages and wrecked everything
 
man
 
Pip
9:26 PM
all of my pathfinding stuff is gone
4 days of work
 
Jon
I think if you add it as a Unity plugin, it will automatically be linked to those Unity Player libs
 
I'm stickin with P4 until someone forces me to use Git.
 
Jon
but I don't know how you would write it in , say Eclipse
 
Pip
I am an idiot
 
that's the problem i'm having: how to write the plugin in the first place
 
Jon
9:27 PM
you'd almost have to guess
 
I'll just reread the docs
 
Pip
They're just gone. Fuck
 
I might have missed something
 
Jon
well keep me posted
 
@Almo prepares the pointy sticks
 
Jon
9:27 PM
I'm interested in knowing
 
ok
sorry to hear it pip :(
 
Pip
:(
I apparently haven't been including that folder in any commits.... I have no old copies of it even
 
Jon
hmmm
so all your assets are deleted?
i had my assets wiped out once when I first started with unity...
still no idea what or how
 
Pip
Those scripts, yeah
 
git checkout --orphan doesn't delete untracked files?
 
Pip
9:28 PM
the other stuff looks fine
@KevinvanderVelden I checked out, then deleted all, then checked out to master :/
that did it
 
Oh
Yeah, that does kinda break all the safeguards
 
Pip
yep
 
Jon
hacker.
 
Pip
Well... I have a functioning build but no code to make it work in the editor
uh
 
Jon
can you make a web build?
 
Pip
9:30 PM
Nope
 
Jon
y
 
Pip
Code is gone
 
Jon
welcone to unity
 
Pip
Missing whole pathfinding folder
 
Somehow I think it should be harder to delete your code
 
Pip
9:31 PM
@Almo Yes
 
like in P4 you need to do an "obliterate" command, which is something you're advised never to do
 
Jon
yeah, doedsn't make sense here
 
Pip
It was never part of the repo (considered "untracked")
alright, gotta head out :/
 
ooooh
 
Pip
cya all
 
Jon
9:32 PM
ouvch.
he's gonna go cry himself to sleep
So get this... now when i try to debug any project in unity, it crashes visual studio
i'm forced to use monodevelop again, lol
WHYYYYYYYY
 
wtf happened
got latest unityvs version?
 
Jon
yeah
 
reimport unityvs into unity project?
 
Jon
it happens with brand new projects
vs2013 community
 
hmm
 
Jon
9:36 PM
i'll have to try removing it all and re-installing i guess
 
yeah
better try that than be stuck with MD
 
Jon
seriously.
 
:( grrr i hate waiting
wish amazon would hurry up with those dam drones already
 
@Wardy Would you really trust a drone to carry your TV?
 
9:52 PM
@Hjorthenify if it turns up broken i just send it back
but sure why not
probably more than I would trust the likes of yodel round here
 
@Wardy and if the drone accidentely drops it on someone? :P
 
amazon are liable for that not me
I just get a free replacement
its not mine till i sign for it on delivery
 
@Wardy True... What a sight it would be though haha
 
I just got an email from Twitch saying that there may have been unauthorized access to some of your Twitch user account information, including possibly your Twitch username and associated email address, your password, [and more].
 
login > change password
 
9:53 PM
I this a general thing or me specifically?
 
Jon
just you, change pass
 
twitch got hacked a few months back
 
Yeah they reset the password and terminated possible connections with other services for me.
 
Jon
do you think alexander graham bell would be all like, yeah internet woo
 
@Jon no, general thing
 
9:56 PM
Maybe a Dutch thing?
 
in The Bridge, 2 hours ago, by Tim Stone
Important Notice About Your Twitch Account! Please read our blog. http://blog.twitch.tv/2015/03/important-notice-about-your-twitch-account/
Naah
 
Oh nvm
 
Jon
i had the client from hell
wanted a website, that did literally everything, and wanted it for less than 500$
oh so you wanted to tell me that you had a 500 dollar cap after this boring 20 minute meeting
buhhh-fucken-eyyyyy
something wrong here.
:O
oh man...
 
10:18 PM
Looks fun actually
@Jon Youtube thought I wanted to watch this video next: youtube.com/watch?v=ttei3eau21Q
 
Jon
 
MLM
Anybody know how to find your Unity Asset store publisher ID if you don't have any packages released? I want to see my profile page like this one is 743
Nvm found it by just by "brute force". Since it is just a incrementing number, I just looked for the latest.
 
anyone got any ideas why this won't work ...
if I put a breakpoint in the task code I never seem to get to it for some reason
this used to work
I did something to break it
 
10:36 PM
Yay work is over
 
Pip
nice
 
@Jon I want to print this so I can put it on a wall next to my desk
at work
 
10:53 PM
@Jon I tried the square game. It's alright, but fucks with your brain when looking down :D
 
@Wardy code looks right to me, but...why are you remaking .NET's Task type?
 
its my existing unity code
 
oh right, Task is .NET 4+
 
i deliberately followed the .Net model for when unity finally gets a bloody clue
for some reason though this isn't working
 
what does your Task class provide that docs.unity3d.com/462/Documentation/ScriptReference/… doesn't?
 
11:02 PM
oh, @Wardy, change _expr() to _expr.Invoke()
 
UnityEvent has even inspector support, it's fun fun
 
Events are not tasks
 
actually, both invoke() and just () should work...odd
 
@Lasse this is a threaded work queue item
 
ah
well, unity does not like threads either
it needs a lot of duplicated types that are not unity dependent
 
11:04 PM
thats basically m full implementation
i call it like this ....
Task.Factory.StartNew(() => { some code });
its basically designedto mimic the bits I want from .Net 4 without going all the way
up until yesterday it worked fine
now for some reason execute in the task class just hangs
no idea why
 
damn it I always forget I have to get up an hour earlier nowdays
later ->
 
later @Lasse
@IcyDefiance btw i have tried both of those
ok now im really confused
in one scene it works and the other it dont
 
oh well there you go. it's a unity problem. evil unity.
 
dammit time to file a bug report with unity
AGAIN!
 
lol I was joking. I actually have no idea. might be some other problem.
 
11:18 PM
I can't see why the same code works in 1 scene and not in the other
although the other is using my planet code this scene uses my terrain code
maybe its something to do with the terrain code
 
so...C++ can't do type introspection... meaning if I have a Mesh<T>, where T is the vertex type, that vertex type needs to "register" its members with Mesh somehow so a shader can be generated for it...
seems redundant. I don't like it.
 
@IcyDefiance what?
 
I was looking to go down this route with c# and SharpDX
 
@IcyDefiance if you're saying what I think you are, it can
 
the problem is that you basically need to dynamically define the types in the shader code on the fly
that said don't all shader calls at that level basically involve defining a chunk of code compiling and pushing to the gpu
at runtime
 
11:21 PM
doesn't need to be on the fly in C++. it can be at compile time. that's how templates work anyway, which has some pretty awesome implications. I just want it to be automatic with any struct that someone using my framework might create.
forcing inheritance of a Vertex type is an option though
 
@IcyDefiance elaborate on what you're trying to do here
 
okay, so someone using my framework makes a struct VertexP3 { Vec3 Position; }
then he says Mesh<VertexP3> mesh; or however the heck you instantiate a templated class in C++
how can the Mesh class know what members VertexP3 has?
don't need the names of the members, only their types and order
 
does it need to know ?
presumably you would have to implement a method or 2 in the mesh class
like Push()
 
it does need to know, because the shader needs to mirror the members of that struct. I could force the user to create that shader, but I don't want to.
 
Push would iterate your Vertices<T> and build a buffer on the gpu
 
11:26 PM
@IcyDefiance that should work as is, unless I'm misunderstanding?
you can use CRTP if you want a compile time interface of sorts
 
you're basically now in the realms of dynamically writing shader code too
 
I need the Mesh class to generate a string with something like "in (location=0) vec3 member1;"
 
that's where I backed out
 
if the vertex struct is different, I need different "in" statements
yeah, I'll be dynamically writing shader code, at least as best as I can
 
@IcyDefiance const static member?
 
11:28 PM
I did similar to unity
but went for something like a Mesh<T> then a Material<T>
 
the other option is to just predefine a set of shaders for "standard" vertex formats, and let the user choose one of those. if none of them work because the vertex format is crazy, then the user will be forced to write his own.
 
@IcyDefiance LoL?
 
So when using materials on a mesh you had to have a material that was compatible with the vertex type
 
not tonight, Almo, I'm inspired to actually get some work done for once
 
@IcyDefiance I'm still struggling to see what the problem is; just define the template as is
 
11:29 PM
ok no rpoblem :)
good luck with it!
 
it saved you having to try and figure out the code
 
@OMGtechy the problem is generating a shader inside the Mesh class based on the members of the template parameter
 
making sense @IcyDefiance
 
@IcyDefiance simple code snippet example?
 
uhh I can try
 
11:31 PM
its c# and DX based but the idea i guess is the same
 
struct A
{
static void foo() { /* ... */ }
};

struct B
{
static void foo() { /* ... */ }
};

template <typename T>
struct M
{
void doFoo() { T::foo(); }
};
 
use fixed font man
wtf
:)
 
omgbbq
 
I am trying to xD
 
@OMGtechy now make struct M generate a shader, and make the shader contain the same members that T contains, whatever T ends up being.
shader is a string
 
11:34 PM
@SpartanDonut ranked LoL duo?
 
sure
 
cool
 
[pingspams omg]
 
one of my materials
hopefully theres enough sample code to get you going
 
11:35 PM
@IcyDefiance oh hey didn't see you there
@IcyDefiance sup dood?
 
@IcyDefiance what's pingspam?
 
I'm going to bed and didn't want to leave you totally stuck sry about the pings dude
 
struct A
{
	static void foo() { /* ... */ }
};

struct B
{
	static void foo() { /* ... */ }
};

template <typename T>
struct M
{
	void doFoo() { T::foo(); }
};
there we go
 
YAY format
 
Turns out his actual code had no formatting so he needed to fix that first
 
11:36 PM
lol
night all
:(
 
More like I copied it from ideone.com which tried to do its own formatting and failed :P
 
Ya ok. We believe you ;)
 
xD
@IcyDefiance so you want to generate types at runtime or compile time?
 
You have to imagine that as an IRL very exaggerate wink
Like someone really putting their head into it
 
I did, don't worry ;)
more like ;D
 
11:38 PM
haha yeah
 
whether this happens at runtime or compile doesn't matter. compile time is probably better, but it won't be happening every frame so a slight speed loss for doing it at runtime won't hurt anything.
I don't know if "template <struct T>" is valid either. Take this all as pseudocode, lol.
 
It isn't, but I get what you mean :P
AFAIK
pretty sure it's just class and typename that are allowed
 
ah okay
 
I prefer to use typename because...well...it's the name of a type
 
As Far As I Keyboard
 
11:42 PM
How far is that really?
Have you keyboarded coast to coast before?
 
@IcyDefiance will it only ever be some combination of a known set of members?
@SpartanDonut 42
 
42 keyboards? holy shit
 
@OMGtechy uhh, regarding the intent of that question instead of the technical details, the answer is yes
 
@IcyDefiance in other words, all possible member names / types are known?
 
Vertex might contain any type, and that type might contain any other type, but then that type would contain Vectors or floats or whatever. if you dig deep enough you'll get just a known set of members.
so yeah, I could list them all out in an enum or something
 
11:46 PM
hmm, gimme a min to type it out
SFINAE and type_traits are your friend here, although frankly you might want a different solution because it isn't going to be pretty
 
actually, you could define everything as a sequence of either floats, doubles, ints, or longs. a Vector3 would be a sequence of 3 floats.
float would be a sequence of 1 float
the Vertex class in my gist would be 3 floats, 3 floats, 2 floats
 
if you make them POD types you could just pass a byte array and reinterpret cast
this is going to take a while to type out aha
 
yeah POD types are best. translating pointers or anything complicated like that into a shader would be painful.
 
@IcyDefiance to save me typing all this out, do you know what SFINAE and type traits are?
 
nope, but I'll figure it out. my googlefu is pretty good.
 
11:51 PM
@IcyDefiance I'll write something to start you off then, and you can fill the blanks in
 

« first day (1691 days earlier)      last day (3332 days later) »