Thought Repository

Day 4 and the Show


The BVW saga continues. Today was the last day, and the show. Unfortunately, today did not go as well as yesterday. Last night, groups were rehersing, fixing, and then cutting videos. It was going smoothly for a while. The problem was that there was no cutoff. The groups that were last thought they could take forever, and they weren't even the only ones who thought they still had more they had to do. What people didn't realize is that they might have wanted their worlds to be better, but if they wanted to have a show at all, I'd need a substantial amount of time to make sure I have all the worlds, sync the bits between all 6 machines, and test everything to make sure it is ready to run smoothly. It's my neck on the line when things break because of that roll I put myself into. I'm tired of Randy telling me I didn't test enough and that I need to be more paranoid because it isn't good when things break in a real demo. I was trying to do that. Trying very hard but I can't do my job if people don't want to let me. If I do this again next year, there are going to be some changes, including hard deadlines.

I ended up decided the deadline would be 4am. I said that at 4am everyone would have to stop and leave everything to me for 3 hours. After that if they wanted to do some more they'd probably be able to but they'd need to talk to me to actually get their changes updated. I went home for a record short 45 mins of sleep. When I got back, what I wanted to do did not happen. People were just always working. Several times I tried to set a deadline, later and later. When I did get to try to do what I wanted, there were groups that were missing. There was more rehersal in the day. I was working down to the wire of the show, with no time to test the worlds myself. It was very frazzling. And then something bad did happen. There was one world that failed in the show and it was my fault. I had attempted to make the changes that I asked them to make but they didn't. It was a mistake because I did it wrong and didn't have time to test and it broke the world. Luckily I was able to fix it before we got to try them again so we were able to do it in the end.

That issue was a click to start issue which I'm going to solve for good. While waiting to do my work I sat and brainstormed some of the things I wanted to do differently next year in teaching Panda and running the class. One of my ideas was a unified BVW world launcher. The idea is a framework of a world which is a class that preloads on init and has a start method. The world however, is not the executable and doesn't manage its own click to start. Instead each world would come with a config file that specified what file and class the world is in, and what to use as a click to start screen. a launcher that I will build will open these config files, initialize the world, do the click to start, and then start the world. This solves many problems. 1, it means the command I run to show their world in class is always the same and it running the right thing is dependant on them writing their config file correctly. 2, By me handling click to start, there will always be one, it won't include sound and it will always be a standard click or space to start. 3, there can be different launcher versions for different situations using the same config files. For instance, there could be one for them testing that just runs their world with or without a click to start screen for debugging. In class there could be a launcher that reads many config files and then provides a gui launcher with a menu of worlds to start. Combined with another idea I also want this to solve to click to start size issue. The laucher should by default scale up the click to start screen so that it fills the screen and doesn't leave things visible on the left or right. I will provide a template image that is 512x512, the correct texture size, but that has red borders painted on the top and the bottom so that people know which areas they can paint in and which will be cut off. Other ideas for improving things involve improving my initial demo to use a framework that I would be comfortable with people basing their code off of and providing extra samples and tutorials to cover more advanced topics that students aren't ready for in the early teaching session but will no doubt want later on, such as collision detection, advanced cut scenes and camera movement, multiple views, a better VR sample, advanced lighting and materials, and so on.

Comments