| Beatle's's profileBeatle's BlogPhotosBlogLists | Help |
|
June 30 Function OverloadsHey All, In the C++ native client’s documentation, some of the function descriptions list default values for some of the function parameters. In C++, this means you can use a shortened form of the API function and the default values will be used. While .Net/C# doesn’t currently support default parameter values, it does support function overloading, and I have used that ability in the new Managed SimConnect Client library to provide overloaded functional equivalents for the C++ shortened forms (I’ve used the same default values as listed in the C++ docs, so you can reference those for API specific defaults). So when working in Visual Studio, pay attention to the IntelliSense popups, as they will list all the available overloaded versions. I’ve also added a few “specialized” extra functions for dealing directly with the User Sim Object (basically, these functions don’t take a dwObjectID value, they internally use the constant that specifies you want to talk to the user):
The parameter list for these APIs is equivalent to their non-User specific versions, except the dwObjectID param isn’t included in the list. Another variety of overload I’ve used is to accept different types of data to the same API call. The Text function uses this ability to provide a version of the function that takes a regular string (same as the C++ version) and also a version of the function that takes an array of strings (this version useful with the SIMCONNECT_TEXT_TYPE.MENU flag so you don’t have to embed nul chars(‘\0’) in your string.
A couple of samples The MapInputEventToClientEvent function is a good example. It’s full blown version contains 7 function parameters, but the function is valid with as little as the first 3 parameters defined. In the original managed wrapper, you would always need to enter all 7 parameters like this: sc.MapInputEventToClientEvent(Groups.GroupID, “shift+a”, Events.ShiftA, 0, SIMCONNECT_UNUSED, 0, false); but with the new client library, you can use the shortened form: sc.MapInputEventToClientEvent(Groups.GroupID, “shift+a”, Events.ShiftA);
The Text function can be used to display both scrolling/paging text across the top of the FSX/ESP display and to display a 1 up to 10 selection dialog. With the original managed wrapper, you would have to define the string for a selection dialog something like this: string strSelectionDlg1 = “Dialog Title\0Selection Prompt:\0Selection 1\0Selection2\0Selection3\0\0”; but with the new client library having an overload that takes a string array, you can define that same selection dialog this way: string[] strSelectionDlg1 = { “Dialog Title”, which is much easier to read.
Stay tuned for more If you notice any overloads missing or just want to suggest some additional overloads, drop a line in the SimConnect forum on FSDeveloper.com. And keep an eye here on the blog for additional info on the new Managed Client Library.
Tim “Beatle” Gregson June 24 Initializing and Connecting[This is the first in a small series of posts covering some of the new/different parts of the client library compared to the version in the official SDK. In this first installment we’ll cover Initializing and Connecting.] I don’t use the SimConnect.cfg file with its index based selection of a set of connection parameters; for one, that just flat out wouldn’t work for a Silverlight application, and there are several other environments where that doesn’t work well. So instead, I just take the server information directly via the Open() function. You application is free to use whatever method it wants to query/store this information. Here's some prelim docs for the constructor, open, and close functions. Constructor (Desktop version of client) new SimConnect(object syncObject, bool bSerializePackets); Where syncObject
bSerializePackets
Constructor (SilverLight version of client) new SimConnect(object syncObject); Where syncObject
Open function (Desktop version of client) Open a local connection using the default named pipe void Open(string strAppName); Where strAppName
Open a TCP/IP connection (IPv4 or IPv6) void Open(string strAppName, string strHostName, Int32 iPort, Boolean bIsIPV6); Where strAppName
strHostName
iPort
bIsIPV6
Open a TCP/IP connection (IPv4 only) void Open(string strAppName, string strHostName, Int32 iPort); Where strAppName
strHostName
iPort
Open a named pipe connection void Open(string strAppName, string strHostName, string strPipeName); Where strAppName
strHostName
strPipe
Open function (SilverLight version of client) Open a TCP/IP connection (IPv4 only) void Open(string strAppName, string strHostName, Int32 iPort); Where strAppName
strHostName
iPort
Close a connection void Close(); June 22 Announcing a new Managed SimConnect Client SDKHey All, Today I’m releasing the first public beta of my new Managed SimConnect Client SDK. This SDK can be used to build managed SimConnect clients, both desktop (Console, WinForm, WPF) and web (Silverlight). For the impatient, here’s the download link:
And here’s a more nicely formatted version of the ReadMe file included in the download: Welcome to Beta 1 Enclosed is the SDK for the Beatle's Blog Managed SimConnect client library. This SDK can be used to build both Desktop clients (Console, WinForm, & WPF) and SilverLight clients. The client libraries included are built using the Any CPU setting, so you should use this setting in your own projects, unless some other requirement of your client needs a different setting. The client libraries included are written in 100% managed code with no dependencies on any existing libraries/DLLs/etc (except for a minimal number of .Net FrameWork libraries). Benefits of new client library:
A note on Silverlight Support The SilverLight runtime imposes several restrictions on socket communications. SilverLight applications can only open a port in the range 4502 through 4534, so you will need to modify your SimConnect.XML file to open one or more IPv4 ports in this range. Here is a sample SimConnect.XML file: <?xml version="1.0" encoding="Windows-1252"?> <SimBase.Document Type="SimConnect" version="1,0"> <!-- Global (remote) IPv4 Server Configuration (SilverLight compatible) --> </SimBase.Document> Another restriction is that in order to make a cross-domain connection (which would be any SimConnect connection), the machine you are trying to connect to (the machine that Flight Simulator/ESP is running on) must be running a Silverlight Policy File server on port 943. See the Samples section below for a simple Policy File server that fills this requirement.
Client Library Files
Solution Files
Basic Sample List (those in SamplesBasic.sln)
Enhanced Sample List (those only in Samples.sln)
Documentation At the moment, the documentation consist of this readme file and the sample projects included in this SDK. Please keep an eye on my blog for future posts related to the new client library. Please use the FSDeveloper SimConnect forum for questions, suggestions, and bug reports. Wow, look at all the cobwebs in here<cough/><cough/> Yes, it’s been quite awhile since I last posted, sorry about that. Quick catch up, Aces got shut down and for the time being, I’m still employed at Microsoft. Just a quick post for now to blow out the cobwebs (and make sure Live Writer is setup correctly). I should have some more interesting posts in the next few days. <cough/><cough/> Tim “Beatle” Gregson July 21 In-Process DLL SimConnect Client SampleHey All, In my last blog post, I mentioned we had a new download area with some new samples and that I had a couple of samples that needed some minor cleaning up and then they would be posted there. Well one of those has been posted there, the In-Process DLL SimConnect Client sample (actually, it was posted almost 2 months ago, I'm just now getting around to blogging about it :-> ). I wrote this sample because I noticed we didn't have any in-proc DLL samples in the SDK. First off, what does that mean, In-Process? It means that the DLL SimConnect client is loaded within the ESP/FSX process space instead of within its own process space like an external .EXE based SimConnect client. This has some good points and some bad points (depending on what you are trying to do). The good points are that you register a callback function once, right after the SimConnect_Open call, and that callback will get called directly by the Server Side SimConnect code when messages are available for your client. This bypasses all of the networking layer (ie no TCP/IP, no Named Pipes, you get a direct function call into your code from the Sim side code). This also means you don't have to run your own HWND based message pump, you don't need to use a background thread with an Event Handle, you don't need to use a timer based query scheme, etc - in other words, it makes life much easier. The bad points are that you can't really do standard windows based UI this way - well, you can but its not guaranteed to work (DirectX and GDI get into fights with each other sometimes, especially in full screen mode) unless you put the Sim into Dialog Mode first. You can still add menu items, use the SimConnect_Text function to display both scrolling text and simple "select one of the below" style dialog boxes. Another bad point, in some folks eyes anyway, is you can only use C++ to write an In-Proc DLL client. Also, since your client is running within the ESP/FSX process space, if your client code goes nuts (causes a fault of some sort, or goes into an infinite loop) you can take down the entire Sim. So, if you want to write a client with lots of UI and/or you want to use managed code, stick with an out-of-proc EXE style client, but if you can live within the above restrictions, then an in-proc DLL style client may be the way to go. Things that would make a good in-proc DLL style client:
What the sample does The sample is fairly simple in what it does. It adds a couple of menu items to the AddOn menu (Show Weather Menu and Show Time Menu). Selecting one of these menu items will use SimConnect_Text to show a "Select on of these options" dialogs, the weather dialog allows you to query the dialog from either the current location or from SeaTac, the time dialog lets you set the time to either 12:00 Local or 00:00 Zulu. Selecting one of the weather reporting options will query for the Metar string at the requested location, and then use SimConnect_Text to display the Metar string as a scrolling message across the top of the screen. Selecting one of the time set options will, surprisingly enough, set the time accordingly :-> Hopefully a few of you will find the sample useful. If you do, or you have any questions about it, drop by the Microsoft ESP Forum to discuss it/ask questions. Tim "Beatle" Gregson May 13 New Microsoft ESP OnLine ResourcesHey All, I'm a little late with this news, but Todd, our Developer Evangelist, has been hard at work getting lots of new resources for Microsoft ESP developers online. We now have our own MSDN Microsoft ESP Developer Center, which includes:
and if you have an MSDN subscription, you can also download the ESP runtime and SDK from the Subscriber's Download area (I'd provide a link, but my subscription expired and my renewal hasn't gone through yet :-> ). Over time we'll be adding additional content to the ESP Developer Center (I've got a couple of samples I need to get cleaned up a little so Todd can post them), so check back often (the team blog and forum area both have RSS feeds available). I want to draw a little extra attention to the SDK docs being online. For those of you who bought the Standard version of FSX or those who just don't want to install the whole SDK, you can now lookup the format and options available in the various configuration files (aircraft.cfg, panel.cfg, etc) online. If you are trying to find the Microsoft ESP section within the MSDN online docs, just remember that we are under the "Servers and Enterprise Developement" top-level section :-> Tim February 23 ESP in the newsI've got another round of ESP news articles for ya. Business Week This one is a little old, from back in December, but if you haven't seen it yet, take a look: I particularly like the part about Northrup Grumman using ESP to create a prototype/Proof of Concept on page 2 of the article, since I got to spend a week up in Reston, VA working with this team to pull this off :-> I doubt every Service Provider who uses ESP is going to get a week of my time to help them out, but it was a lot of fun and they were a great group of developers to work with. Training & Simulation Journal TSJOnline.com has 2 articles on ESP: First TSJOnline article - this one mentions Lockheed Martin and FlightSafety have signed up as partners. Second TSJOnline article - this one is a more general article on Microsoft entering the Visual Sim market. Games Developer Conference / Serious Games Summit This next one is an article on Gamasutra about the GDC / SGS last week in San Francisco and the Microsoft ESP presence there - you even get to see a picture of our studio head, Shawn :-> Microsoft MSDN For those of you with a Microsoft MSDN account, you can now download the ISOs for Microsoft ESP for testing purposes from the MSDN Subscriber downloads section. Microsoft ESP Home Page Our home page has been updated with a short demo video, click and enjoy :->
That's all for now, till next time Tim "Beatle" Gregson February 11 SimConnect and WPFI've noticed some folks having problems using SimConnect with WPF based apps because there's no easily accessed hWnd and no easily overridden DefWndProc. Here's a solution that works around those problems and is also usable in WinForms apps if you like. In the existing managed samples provided in the SDK, the 2nd param of the new SimConnect(...) line is the hWnd and the 3rd param is the WM_Xxx based message to send to the main window. For this solution, we will instead pass 0 for both of those params and pass an AutoReset EventWaitHandle object as the 4th param to that call. Then we will create a background thread that waits for this event to fire and then calls the ReceiveMessage function to handle data received from SimConnect. Here's a couple of code snippets: This first snippet shows the data used: // dataMicrosoft.ESP.SimConnect.SimConnect sc; System.Threading.EventWaitHandle scReady = new System.Threading.EventWaitHandle(false, System.Threading.EventResetMode.AutoReset); System.Threading.Thread bgThread = null;public delegate void MyDelegate(); And this next snippet shows the code that uses these data items: // codeprivate void ConnectToSimConnect(void) {sc = new Microsoft.ESP.SimConnect.SimConnect("VE_SC_WPF", (IntPtr)0, 0, scReady, 0); bgThread = new System.Threading.Thread(new System.Threading.ThreadStart(scMessageThread)); bgThread.IsBackground = true;bgThread.Start(); } private void scMessageThread() {while (true) {scReady.WaitOne(); this.Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority.Normal, new MyDelegate(scMessageProcess)); } } private void scMessageProcess() {sc.ReceiveMessage(); } With the code above, all of the OnRecvXxx callbacks will still happen on the UI thread context, meaning the rest of your code can stay the same as it was when using the hWnd and WM_Xxx message with an overridden DefWndProc. If you would prefer that the message handling and the OnRecvXxx callbacks occur on the background thread context, you can do that with this code snippet instead: // codeprivate void ConnectToSimConnect(void) {sc = new Microsoft.ESP.SimConnect.SimConnect("VE_SC_WPF", (IntPtr)0, 0, scReady, 0); bgThread = new System.Threading.Thread(new System.Threading.ThreadStart(scMessageThread)); bgThread.IsBackground = true;bgThread.Start(); } private void scMessageThread() {while (true) {scReady.WaitOne(); sc.ReceiveMessage(); } } Doing things this way will require you to handle any thread synchronization that might be required to access any UI elements within each OnRecvXxx callback, but if you aren't accessing UI elements much in your callbacks, then the 2nd way might be more efficient overall, but will require more work on your part to insure things happen on the correct thread. I've been playing around with WPF for the last couple of weeks and its a lot of fun and can do some really cool things (repeat after me, DataTemplates are your friend :-> ). Hopefully the above code snippets will let folks out there write some cool WPF based SimConnect clients. Tim "Beatle" Gregson November 29 Microsoft ESP BuzzWe've posted case studies from a couple of our launch partners on the ESP Website. They are located on the Resources page. Adacel MaxSim Flight TrainerThe first one, from Adacel, is a .DOC file describing their MaxSim Flight Trainer program. I'm going to quote the Executive Overview paragraph here, because it really says it all about what ESP is, but do go read the entire Case Study Document. Acron Capability EngineeringThe second one, from Acron, is a Windows Media Video file produced by Acron describing the ways they are using Microsoft ESP. Here's a link to some news/press releases from Acron, including information about a couple of support products they will be offering including a 3D modeling program and a HLA interface for Microsoft ESP. Northrop GrummanThis one isn't on our Resources page, but Northrop Grumman has put out a Press Release announcing they will be using Microsoft ESP as part of their C4ISR Route and Mission planning system. In fact, I'll be up in Reston, VA all next week, at the Microsoft Technology Center, helping them work on a Proof of Concept for this.
Well, that's all the case studies/press releases I've come across so far, will post again as I find more of these. Beatle November 28 Microsoft ESP at I/ITSECSeveral members of the Microsoft ESP team are down in Orlando this week at the I/ITSEC conference. Anybody interested can check out the I/ITSEC web site, which has the daily conference newspaper, ShowDaily, available as PDF files for each day. If you take a gander at the Tuesday Nov 27th issue, on page 10, there's a write up about Microsoft ESP. Beatle November 15 I've got ESP ...No, I can't tell what you are thinking (but stop thinking that or you'll go blind :-> ), I'm talking about Microsoft ESP (ww.microsoft.com/esp) of course. What is Microsoft ESP I hear you asking (and no, really, I don't read minds), well, I'll let the Press Release answer that as its much better at it than I could be. And just why am I bringing this up (besides the fact that we just announced the new product today), why because I just transferred to the ESP team a couple of weeks ago of course. I see great things in the future (and I promise that's the last cheap ESP joke, for this post at least :->).
DEVCON and FANCON
Well, Simulation DevCon 2007 has come and gone now, and from everything I heard both during the DevCon and since it seems to have been a great success (big kudos to the AVSim folks for organizing all the conference logistics). If you happened to hear there were some announcements at the DevCon that weren't allowed out in public, well see the first paragraph for info about one of them that is now public :->
FanCon immediately followed the DevCon, and also seemed to be well received by those in attendence, although I got to admit, I was pretty much conferenced out after the DevCon and was sorta dragging through the FanCon part. I did get one of the Vuzix VR920 VR goggles to play with though (more on that after I've had some time with it). Lots of cool stuff on display including several different styles of motion platforms including muscle powered, electric actuators, and hydraulic based systems (don't recall seeing any pnuematic based systems though).
Welp, I gotta get to sleep. If the Microsoft ESP link above doesn't work, try it again later, we're experiencing some technical difficulties at the moment :->
Beatle November 03 On the Road Again ...... I don't have to wait to get back on the road again, as I'm on it right now :->. I'm currently in Grinnell, IA, about to start my second day of a 3 day drive from Virginia to Seattle/Redmond, Washington for both some direct work related stuff and the AVSIM conference next weekend. If all goes well, I should be in Ogden, UT by the time I stop tonight.
I'll try to remember to post some updates here about the conference, that way I'll have updates that are less than 6 months apart :->
And just to give the post a little Flight Sim-ness, a hint/feature for folks with the XPack and enjoying the online racing feature, wouldn't it be nice to see each individual lap time? Well, while viewing the in-game version of the race results screen (ie the semi-see through version you get right after crossing the finish line), if you right click on a users name in the list, that item will expand out to show all the lap times, right clicking again will collapse that line back to normal.
Well, gotta get back on the road again, Salt Lake Cit or BUST :-> March 06 Band stuff 03/06/07Figured I'd post this seperately to keep the XPack news in its own post :-> Band stuff has been going pretty well. Dirty Jack has had a few gigs now and they went fairly well. I decided my 88-key MIDI controllers were just too large and heavy (well the one with hammer action keys anyway) to lug around and setup on stage, so got myself a pair of M-Audio Axiom 61 MIDI controllers to use. These are very nice controllers if anyone is in the market for a USB MIDI controller (actually, I like just about everything in the M-Audio product line :->), they even have after-touch (first keyboards I've had with that, one of these days I may even figure out how to use it well :->). They also have 9 sliders, 8 rotary controllers, 8 drum pad like controllers (which I use for stuff like a VibraSlap, CowBell, helicopter sound effect, etc). They are light enough, but still feel well made. Dirty Jack has one more gig currently booked on March 17th (St Patrick's Day) at the Box Seats in Massaponox (which is just a few miles south of my house), and we are currently working on setting up a few more gigs, so if you are in the Northern Virginia area, check out the calendar on our website for future dates and drop by for a listen. I've also joined a second band (really more of a 4 piece combo) called Flaming Red Horizon. I'm playing Bass Guitar in this band. This band is doing more blues type music, along with some originals written by a couple of the members. We've had a couple of half gigs (we split the bill with another recently formed band at one gig and also played in a battle of the bands contest) and I think we did fairly well, considering we only had 3 or 4 practices before hitting the stage. Here's a couple links to some video Dave's wife shot at one of the gigs: I'm the one wearing the black bass guitar :-> Tim "Beatle" Gregson March 05 Is that Adrenaline in your pocket, or are you just happy to see meAs you've no doubt already seen by now, we've finally announced the product I've been working on but couldn't talk about - the Flight Sim X:Adrenaline expansion pack. XPack (easier to type than Adrenaline :-> ) will include single player and multiplayer air racing including a P-51 Mustang racing aircraft, some new non-racing related missions (no public details on those yet), some new aircraft (no public details except the P-51 mentioned above yet). And to assuage the fears of the add-on developers out there, we aren't out to put you out of business, but are designing the XPack to include new features that you guys and gals can write your add-ons against (like creating your own air racing courses, creating race specific aircraft add-ons, and a few other bits and pieces that we haven't been cleared to talk about publicly yet). The one point in some of the talk (both our official announcements and general talk among the users) that I take a little exception to is that this is something "new" in the Flight Sim franchise (ie releasing an add-on). Granted it has been awhile since we've done one (OK, back before MS bought us when we were still BAO), but we have released a number of pay for add-ons over the years, including SGA (Sound, Graphics, and Aircraft) for FS4 (I remember this one because it was the first thing I worked on after joining BAO), we bundled Laeming Wheeler's aircraft editing program with some additional goodies (can't remember if that was FS4 or FS5), we released several scenery area add-ons via Microsoft as the publisher, via Mallard publishing, and eventually via our own BAO Publishing (these I remember because I ported them all for release in Japan :->) - all of these scenery areas were included with FS95. So, this is the first pay for add-on we've released since joining Microsoft 11 years ago, but it's certainly not the first one I've worked on :-> We also announced a tentative release month for Service Pack 1 (April ish), and announced that the DX10 update has been pushed back some and targeted for release around the same time as the XPack (Fall 07). Both of these updates (SP1 and DX10) will be free downloads when released, only XPack will be a pay for boxed release (I assume it will be in a box anyway :-> ) Well, that's enough good news for now Tim "Beatle" Gregson January 19 New Train Sim in the works!!!Hey All, We've lifted the veil a little today on what some of the team has been working on since FSX shipped (not me though, still can't mention what I'm working on :->) and that is Microsoft Train Sim. This new version is being built on top of the Flight Sim X engine. Check out the Website for more info. There's also a feedback form on the site if you want to send your wishlists in (no guarantees we'll implement any of them though :->). I've also updated the ACES Bloggers list to the right with 3 new Train Sim related blogs (Yard Limits, Sim Elations, and Rolling). So, everyone follow along until the conductor yells "All Aboard" :-> Tim "Beatle" Gregson January 17 Two posts in one month :->Hey all, Well, a second post within one month, will wonders never cease :->. (OK, technically the last post was Dec 30th, but that's less than 30 days ago :->). Band Stuff is going fairly well, although I'm still playing catchup on a few of the songs, but its getting there (and the others all sound great, so that just makes me sound better :->). We're currently getting ready for our first public gig at Box Seats in Stafford County, VA next Saturday (Jan 27 2007), if you are in the area, drop on by for a rockin' show (Dirty Jack ... When you gotta have it LOUD -n- DIRTY) and/or checkout our website for other upcoming dates. And for some Flight Sim related stuff, work on Service Pack 1 is still continuing (I've got my SP1 fixes checked in already - MP hosts will be glad to hear they should be able to boot players from their game once SP1 is out in the wild) and there's lots of other activity going on in the team (some of which we should be able to talk about in the near future :->). And from the wierd weather department, a couple of days ago it was over 70 degrees here in VA and humid as heck (I was this close to turning the A/C on :->) and today its about 40. Of course, that's nothing compared to all the snow, ice, and wind storms my co-workers out in the Seattle area have been fighting through the last few weeks. Drive careful out there guys and gals, I don't want to inherit your code :-> Well, so long until next time
Tim "Beatle" Gregson December 30 Beatle's Blog: 2.0Hey all, After a few things distracted me from blogging for a while last spring, I got out of the habit that I hadn't yet acquired (or something like that :-> ). I'm going to give this blog thing another try but this time over here on Windows Live Spaces (because I can use the new Windows Live Writer software to edit the blogs). I've reposted the few entries from my previous blog over on MSDN TechNet as entries prior to this one for historical purposes (including the original comments as intact as a cut and paste would leave them :-> ). Lets see, a quick recap since my last post:
Well, that about brings us up to date for now, hopefully I'll be writing more often this time around :-> Tim "Beatle" Gregson Repost from old blog - Original Post Date: February 14, 2006New FSX Screenshots are outI know its been awhile since my last post, and I completely missed the first round of info we released at CES and the associated screenshots we released about that time. But, we have some new screenshots out now, the first 3 new ones are available over at AVSIM . Here's a link to the discussion thread talking about the new screenshots. I know I haven't had much FS related on this blog, but I didn't figure folks would be all that interested in changes to our dialog boxes (which is what I'm working on this version) :->. I mean, how interesting is it to hear that our list controls now have the ability to display graphic images within the cells, or can have different colored text per line or per column, etc. Useful stuff for us as we design the dialogs, but not exactly earth shattering info for you guys :->. That and I can only talk about features, etc that have been publicly announced (which granted, doesn't cover a whole lot just yet :->) further limiting what dialog/UI things I can talk about, even if anybody did find them interesting. So, go check out those screenshots and I'll se ya around. Original Comments# re: New FSX Screenshots are outI for one am interested in your work, granted, not the most important part of the sim, but think of it this way.....The dialog boxes are the very first thing one would see when starting FS and so consider them a "window to a world" and yes, that DOES have impact! Wednesday, February 15, 2006 1:51 AM by André Hedegaard # re: New FSX Screenshots are outWell I for one, am glad the reports of your demise were GREATLY overstated.LOL Thursday, February 16, 2006 10:56 AM by delta november # re: New FSX Screenshots are outWell, I'm very interested in how interaction with ATC might be improved. I don't like having to use the keyboard. Any thoughts on adding mouse/wheel interaction to it? Thursday, February 16, 2006 10:33 PM by Thomas Perry # re: New FSX Screenshots are outit's a dirty job, but someone has to do it Tuesday, February 21, 2006 9:09 AM by JayCee # re: New FSX Screenshots are outHi, Wednesday, March 01, 2006 3:36 PM by tgibson Repost from old blog - Original Post Date: December 04, 2005
Hey Look, Geometry really does come in handy in everyday life :->First off, sorry for the rather large gap since my last post (to all 3 or so of you that aren't related to me that read this :->). Now, for that Geometry reference... I was up in Wilkes-Barre, PA over Thanksgiving helping my parents move furniture and boxes and whatnot around their new house (well, it's an old house, but its new to them :->), they had just moved the weekend before Thanksgiving. The previous owner of the house had finished the basement, but it has a really low ceiling (maybe 6' 4" to 6' 6"). They had some guys unload the truck for them and place most of the furniture, but when Mom showed me the basement, there was this white particle board shelf laying on its side. When I asked where it needed to go, Mom said it was going to have to go back upstairs, because the movers couldn't get it to stand up in the basement because of how low the ceiling was. At first I just accepted that (since everytime I moved around I seemed to be hitting my hands on the ceiling, seemed reasonable to me :->), but I kept looking at the shelf and something in the back of my head kept saying there was something wrong here. Eventually I realized what it was. The shelf was laying on its side (this is a 6ft high by 2 ft wide by 9 inches deep shelf), and I suddenly asked, "Hey, when they tried to stand this shelf up, was it laying on its side like this?", and Mom said "Yes". So I had the bright idea to lay the shelf on its back and then stand it up, and it JUST cleared the ceiling ( sqrt((72 * 72) + (9 * 9)) is less than sqrt((72 * 72) + (24 * 24)) ). So, sometimes you really can use math in real life, thanks Mr Gower (my High School Freshman Year Geometry teacher). And for those who think you have to be a math wiz to be a computer programmer, the above was more math than I generally use at work. Of course, not much call for math when doing dialog boxes and UI widgets (except for converting to and from meters, feet, miles, etc - and we have utility functions that do that sort of stuff for us :->), lots of cajoling windows messages into the right function/handler, but not much math. Which isn't to say I've never used math for work, back in the old DOS days of FS4 and FS5, I used to do 2d graphics drivers, and for Tower I did some 3D to 2D point projection stuff (cylindrical projection to match the panoramic pictures we were using for our airport backdrops), so I did use some math then :-> I actually did do well in math in school, until Calc 2, which I took twice (at 2 different colleges) and got a C both times, at which point I decided me and math had gone far enough :-> All right, that's enough for now, getting close to bed time here on the east coast, and according to the weather report, I might be waking up to white stuff on the ground. Original Comments# re: Hey Look, Geometry really does come in handy in everyday life :->Speaking of UI widgets and windows; please, please, please, allow the auxilliary windows to scale to the resolution of the screen in the next version. My laptop is stuck at 1920 x 1200, and when I look at the login and map windows, etc of FS (IOW, non-flying windows), they are really small and hard to make out because they are stuck at 800x600 or something, and I have all this wasted black space that if the window could scale to the resolution of the screen I'd be able to see those little windows better. (<--fan of runon sentences). Or maybe you know of a switch I can throw to turn this kind of functionality on? I've tried everything. Scaling is turned on in my video card (nVidia 4200 Go 64 MB), I've tried it both on and off. Thursday, December 08, 2005 1:45 PM by Thomas Perry Repost from old blog - Original Post Date: November 10, 2005Department of Prognostication - The demise of Sony/BMGOK, this may be more wishful thinking than prognostication :->. Why am I predicting/wishing for the demise of Sony/BMG? Well, if you haven't already seen this elsewhere in the blogosphere, start with this article by Molly Wood on C|Net: http://www.cnet.com/4520-6033_1-6376177.html Apparently, Sony has come up with yet another stupid, ill-thought out (at least from the consumers standpoint, I'm sure it meets all of their requirements :->) DRM scheme to keep us from exercising our Fair-Use rights to the CD music we buy (in fact, the CDs come with a EULA that basically states that, like computer software, you are only licensing the right to use the music on the CD, not buying the CD outright). The truly nasty part of this DRM scheme is that is uses a "root-kit" in order to hide the files used to implement the DRM scheme, and according to reports on the net, the hidden DRM software also "phones home" to Sony, sending along what CD and track you are playing and the IP address of the computer that is playing it. As if that wasn't bad enough, attempting to remove this malware from your computer can permanently trash your Windows OS install from a minimum of disabling the CD-ROM drive in your computer up to causing the computer not to be able to reboot anymore. Also, the root-kit that they install can be used by other malware-types to hide their own files without them even having to ship/install their own rootkit on your computer. From what I've read, its quite likely that this DRM scheme will be found to violate several existing US and international computer fraud statutes - I find it humorous that in Sony's attempts to keep us from breaking the law, they have resorted to breaking the law themselves, and hope that if they are found to be breaking the law the various courts go after them with gusto :-> (apparently there is already investigation underway in Italy relating to this). So, when shopping for CD's for your loved ones this holiday season (or personal/home electronics devices for that matter), "Just Say No" to Sony/BMG. Well, enough ranting for now :->, I should get back to work. Original Comments# re: Department of Prognostication - The demise of Sony/BMGI think the situation is horrible, but I honestly believe that Sony is mostly guilty of ignorance, as opposed to malice. Thursday, November 10, 2005 5:53 PM by Vincent # fxwzdu6@mail.ruringtones free Thursday, July 06, 2006 4:49 PM by fxwzdu6@mail.ru # hsr9tau@dmoz.orgfunny ringtones Sunday, August 20, 2006 1:51 AM by hsr9tau@dmoz.org |
|
|