A Jack Daniels Day
It is days like this I feel entirely justified to buy myself a little treat by way of a small celebration drink (Bottle -Ed). Call it dutch courage for the ordeal ahead of me, known only to those souls who have released software into the world and bracing themselves for the whirlwind. Despite my repeated disclaimers, notes and warnings, I will still get feedback of the most vehement nature. But that's fine too, it means people are passionate about their game creation, and quite rightly too!
The Launch
The official BETA1 launch occurred just before 9AM Thursday morning GMT and gave Brits and Euro types a few hours head start on any Americans not pulling an all-nighter. Such advantage is now the stuff of history as the downloads are proceeding at full kilter, and slowly melting our two file servers :) The great news is that despite a few trips and stumbles, the server is holding up well and has braved the worst of the day one weather. My compliments to our server guy, Paul.
The Video
It was always my intention to create a whistle stop tour of the software once the beta was out the door, and so I have spent some of the day creating just that. As I write this, I have handed the raw footage over to Rick who will process it into something more presentable and should be with you soon. It's not comprehensive, but it does address questions put to us at this early stage in the beta testing process. Hopefully it will be a nice intro to what it is you've been downloading all day.
The Remainder
As I have a few hours of today left, I plan to take a tour through the blog comments, you tube commands, forum comments, twitter comments, Facebook comments and intermittent emails that constitute the reactions so far. I may also find time to fix one or two small bugs that have been squarely placed in front of me.
The First Patch
I have absolutely no doubt I will be releasing some sort of patch to BETA1 users before too long, so I have set my stall up to prepare for it. I am keeping away from adding new media, and focusing on producing a better executable. Tweaks, bugs, stability, compatibility, usability will all be under the spot light for the next few days. We'll deal with fancy new assets and features once we've absorbed the early bumps associated with any substantial release.
Signing Off
All in all, we're quite pleased with the launch so far, and we also know full well that the work has really only just started. On receiving the beta you are now enrolled into the official development team and your comments and feedback will now shape the future direction of this project. Of course we have ideas of our own, but as far as possible we want the community to decide the order in which these happen. We have some ideas how to organised that and you will know more once we've investigated and created the framework we have in mind (watch this space as it's going to be cool). In the meantime, tinker and play, create and destroy, get a feel for the current version and get those blue sky minds working to imagine what amazing new features you want to see in what has now become YOUR game creator.
We have a good start, and a LONG journey ahead of us. As they say, it's not the destination but the journey that's important. If that is indeed the case, let us never reach or final destination and continue on into the infinite horizons of possibility. Before such grand adventures though, let's make sure we have everything we need and most importantly, not leave anyone behind. This is your software now, so please let us know if it does not do what you need it to do. We'll take care of the rest ;)
Thứ Năm, 31 tháng 10, 2013
Android for all and the new Nexus 5
Just in time for Halloween, we have two new treats for Android fans. First, we're excited to unwrap our latest platform release, KitKat, which delivers a smarter, more immersive Android experience to even more people. And second, we're introducing Nexus 5—a new Nexus phone developed with LG.
The first thing you’ll notice about KitKat is we’ve made the experience much more engaging: the book you're reading, the game you're playing, or the movie you're watching—now all of these take center stage with the new immersive mode, which automatically hides everything except what you really want to see.
Bringing more Google smarts to Android
Behind the polish on the screen is the power under the hood. Take the Phone app, which for most people hasn’t really changed since the days of flip phones. Now, we’re making calling easier than ever, by helping you search across your contacts, nearby places, or even Google Apps accounts (like your company’s directory), directly from within the app. And with the new Hangouts app, all of your SMS and MMS messages are together in the same place, alongside your other conversations and video calls, so you’ll never miss a message no matter how your friends send it. This is just a small taste of KitKat—learn more on our site.
Google has always focused on helping users get immediate access to the information they need, and we want to bring this same convenience and power to users on Android. With the new Nexus 5 launcher, Google smarts are deeply integrated into the phone you carry around with you, so getting to the information you need is simple, easy and fast. Swipe once from the home screen to get Google Now literally at your fingertips. Put Google to work for you by saying “OK, Google” to launch voice search, send a text, get directions or even play a song you want to hear. And in the coming weeks, we’re enhancing Now with important new card types that bring you information about contextual topics that interest you such as updates from a favorite website or blog.
Reaching the next 1 billion users
Building a platform that makes mobile phones accessible for everyone has always been at the heart of Android. Until now, some lower-end Android phones couldn't benefit from more recent Android releases due to memory constraints. With KitKat, we've slimmed down Android’s memory footprint by doing things like removing unnecessary background services and reducing the memory consumption of features that you use all the time. We did this not only within Android but across Google services like Chrome and YouTube. RAM (or memory) is one of the most expensive parts of a phone, and now Android can run comfortably on the 512MB of RAM devices that are popular in much of the world, bringing the latest goodies in Android 4.4 within reach for the next billion smartphone users.
Introducing Nexus 5
Along with our sweet naming tradition, we also introduce a new device with each platform release to showcase the latest Android innovations. For KitKat, we partnered with LG to develop Nexus 5 -- the slimmest and fastest Nexus phone ever made. Its design is simple and refined to showcase the 5” Full HD display. Nexus 5 also keeps you connected at blazing speeds with 4G/LTE and ultra fast wifi. The advanced new lens on Nexus 5 captures more light for brighter night and sharper action shots. And with optical image stabilization, you no longer have to worry about shaky hands and blurry pictures. A new HDR+ mode automatically snaps a rapid burst of photos and combines them to give you the best possible single shot. Learn more on our site.
Android 4.4, KitKat, which comes on Nexus 5, will also soon be available on Nexus 4, 7, 10, the Samsung Galaxy S4 and HTC One Google Play edition devices in the coming weeks.
How’s that for a treat?
Posted by Sundar Pichai, SVP, Android, Chrome & Apps
The first thing you’ll notice about KitKat is we’ve made the experience much more engaging: the book you're reading, the game you're playing, or the movie you're watching—now all of these take center stage with the new immersive mode, which automatically hides everything except what you really want to see.
Bringing more Google smarts to Android
Behind the polish on the screen is the power under the hood. Take the Phone app, which for most people hasn’t really changed since the days of flip phones. Now, we’re making calling easier than ever, by helping you search across your contacts, nearby places, or even Google Apps accounts (like your company’s directory), directly from within the app. And with the new Hangouts app, all of your SMS and MMS messages are together in the same place, alongside your other conversations and video calls, so you’ll never miss a message no matter how your friends send it. This is just a small taste of KitKat—learn more on our site.
Google has always focused on helping users get immediate access to the information they need, and we want to bring this same convenience and power to users on Android. With the new Nexus 5 launcher, Google smarts are deeply integrated into the phone you carry around with you, so getting to the information you need is simple, easy and fast. Swipe once from the home screen to get Google Now literally at your fingertips. Put Google to work for you by saying “OK, Google” to launch voice search, send a text, get directions or even play a song you want to hear. And in the coming weeks, we’re enhancing Now with important new card types that bring you information about contextual topics that interest you such as updates from a favorite website or blog.
Reaching the next 1 billion users
Building a platform that makes mobile phones accessible for everyone has always been at the heart of Android. Until now, some lower-end Android phones couldn't benefit from more recent Android releases due to memory constraints. With KitKat, we've slimmed down Android’s memory footprint by doing things like removing unnecessary background services and reducing the memory consumption of features that you use all the time. We did this not only within Android but across Google services like Chrome and YouTube. RAM (or memory) is one of the most expensive parts of a phone, and now Android can run comfortably on the 512MB of RAM devices that are popular in much of the world, bringing the latest goodies in Android 4.4 within reach for the next billion smartphone users.
Introducing Nexus 5
Along with our sweet naming tradition, we also introduce a new device with each platform release to showcase the latest Android innovations. For KitKat, we partnered with LG to develop Nexus 5 -- the slimmest and fastest Nexus phone ever made. Its design is simple and refined to showcase the 5” Full HD display. Nexus 5 also keeps you connected at blazing speeds with 4G/LTE and ultra fast wifi. The advanced new lens on Nexus 5 captures more light for brighter night and sharper action shots. And with optical image stabilization, you no longer have to worry about shaky hands and blurry pictures. A new HDR+ mode automatically snaps a rapid burst of photos and combines them to give you the best possible single shot. Learn more on our site.
Nexus 5 is available today, unlocked and without a contract, on Google Play in the U.S., Canada, U.K., Australia, France, Germany, Spain, Italy, Japan and Korea (and coming soon to India), starting at $349. Just in the time for the holidays, Nexus 5 will be available soon at the following retailers: Sprint, T-Mobile, Amazon, Best Buy and RadioShack.
Android 4.4, KitKat, which comes on Nexus 5, will also soon be available on Nexus 4, 7, 10, the Samsung Galaxy S4 and HTC One Google Play edition devices in the coming weeks.
How’s that for a treat?
Posted by Sundar Pichai, SVP, Android, Chrome & Apps
How not to get tricked: Your favorite online safety tips
Whether it’s defending yourself from identity thieves or removing bad software from your family’s computer, it’s important to know how to stay safe online. Over the course of the past few months, we’ve explored the simple steps you can take to help keep yourself, your family and the web safer. And in celebration of October's National Cyber Security Awareness Month, for the past 30 days we’ve posted a daily tip on how to #staysafe online.
Even though our favorite month of the year is about to end, it’s good to know how to stay safe all year round. Here are the top five most popular tips from the month:
Security and privacy are important and Google provides tools to help you protect yourself and your information. For example, 2-Step Verification adds another layer of security to your Google Account. Google+ Circles and YouTube settings help you control what you share and keep your information private if you want to keep it to yourself. Verify Apps helps protect your phone from malware, and Android Device Manager will ring your phone and locate it on a map to help you find your device if you lose it (and remotely delete your information from the device if you can’t get it back).
For more information on how to stay safe and improve your online security and privacy, visit our Good to Know site, which has more information and details about Google’s tools and helpful advice on staying safe.
Posted by Diana Smetters, Software Engineer
Even though our favorite month of the year is about to end, it’s good to know how to stay safe all year round. Here are the top five most popular tips from the month:
- Add 2-step verification to keep the bad guys out of your Google account.
- Use a password to secure your router.
- Avoid malware—review permissions and ratings before installing a new app.
- Think before you share.
- Learn how to locate and remote wipe your mobile device in case it’s lost or stolen.
Security and privacy are important and Google provides tools to help you protect yourself and your information. For example, 2-Step Verification adds another layer of security to your Google Account. Google+ Circles and YouTube settings help you control what you share and keep your information private if you want to keep it to yourself. Verify Apps helps protect your phone from malware, and Android Device Manager will ring your phone and locate it on a map to help you find your device if you lose it (and remotely delete your information from the device if you can’t get it back).
For more information on how to stay safe and improve your online security and privacy, visit our Good to Know site, which has more information and details about Google’s tools and helpful advice on staying safe.
Posted by Diana Smetters, Software Engineer
Thứ Tư, 30 tháng 10, 2013
Wednesday Eve Of Battle
Well, We're Nearly There
A tale of two halves, with a meeting at one damnably early end of the day and lots of installing and testing at the other end. The goal; to produce a beta installer that stands up to the many PC systems attempting to use it throughout Thursday as the world wakes up in stages.
It's been quite a blur since March when we started putting the prototypes together and figuring out what we wanted from this new tool. I'm very pleased with where we are right now, and I am eager to get cracking with more tweaks, fixes, optimizations, new features and more betas.
The Meet
The meeting today was simply to confirm that the beta existed, and to double check we did not miss anything. Much time was also dedicated to the next large items on our list, and the order we should tackle them. Still top of my own list is performance, and I have a few fiendish ideas to implement in the weeks to come.
LOD BLOB - This idea involves creating a few patch-work quilts of low-LOD static entities using a single vertex buffer and texture image. These LOD blobs are then used to replace distant single entities used during shadow rendering and also for the far distance of any rendered scene. The upshot is that the draw call count is vastly reduced, and we also ensure only low-LOD meshes are used in the more distant shadow renders meaning less polygons overall. They cannot replace moving entities and transparent ones, but my guess is that there will be more static than dynamic, so we will see a saving.
TERRAIN POLYS - Another obvious target, and more immediate to me, is the strange behavior of the terrain render which on the face of it seems to be rendering 350,000 polygons for a rather flat boring (and empty) scene. It might be right, but I am going to investigate. Even though modern graphics cards consider 'polygons as free', for older cards the polygon count and fill rate play a role in the final frame rate score and non more so than one of the alpha testers who is experiencing some serious woes, even with effects switched off. Strangely though, my three Ultrabooks demonstrate a decent 30fps when extra features are switched off which suggests I might just get away with running Reloaded on integrated hardware with more optimizations and newer laptops.
SERIOUSLY LOW-END - Just to make sure the Reloaded software ran on the worst of the worst, I dug out a ten year old machine running XP and an AGP graphics card for my 'silly test'.
As you can see, a blinding performance metric there for my computer :) Alas, my wonderful AGP card could not exceed to shader model 3.0 and the terrain and entities just rendered white but amazingly everything else worked fine.
As the bloom shader also rendered blank, I could not see the frame rate inside the Reloaded test game, but it's perhaps a good thing I did not. I did consider for a brief moment supporting shader model 2.0 and REALLY notching down the demands on the 3D chip, but I think it makes sense to define some borders to our low-end specification. A ten year old XP + AGP rig is probably not within that scope :)
The Test
As I write this, I am doing all sorts of boring and necessary things like formatting Ultrabooks, downloading drivers, installing stuff, testing stuff, making small tweaks and trying installers again. All necessary for a satisfactory beta roll-out, and good guidelines are being made for future releases too.
I have signed the final installer and I can report on a fresh Windows 8 install, you are asked for Administrator privileges and then the software installs without a real hitch. As the DirectX web installer is silent, my WiFi driver was not installed and it skipped it, making the software report a DirectX error. I am now creating a new installer which uses a non-quiet DirectX install so you can see the connection issue and do something about it. I have also uploaded the web installer to Rick so he can host it alongside the beta file, just in case you want to install DirectX separate from the install process (or after it).
Right now I am installing the drivers back onto the Lenovo Ideapad Yoga 13 after the fresh Windows 8 installation which should allow my older installer to finish the DirectX web install properly, and then I will either confirm compatibility with the dreaded Windows 8 or not. I will then move onto other areas of testing to ensure the file I select as the final beta file is the one that won't fall over. Last minute changes can be SO dangerous!
Signing Off
As a reminder for those that do not know, on Thursday we will be releasing the first ever BETA of the FPS Creator Reloaded product to all pledgers of the project. It is thanks to your contributions and support that we've been able to get this far and I am excited to continue working towards making your game making dreams come true.
Don't worry too much about performance on your particular system at this stage as I still have plenty of speed-up ideas I can do to the engine, and as we get real world reports we can narrow our energies toward the most recurring performance drains. It will also be apparent which systems are too low-end for our software, or whether we need to scale back the visual ambitions of the software to allow such low-end compatibility. Stay tuned to this blog to find out about my trials and tribulations in hunting down more performance gremlins.
I also have an inbox slowly filling up with non-performance items, such as a snazzy looking weapon and health screen HUD, but I think we all agree we need to crack overall speed, stability and usability before we go for the finishing touches.
Also a small note, the FPM level files are still in flux and will change for the next version so don't be too precious about any levels you create with this beta as they are unlikely to port to the new version. I will be adding a version control system to allow backward/forward compatibility with level files, but right now it's still got some old stuff in there than needs slopping out.
If any readers want to pledge now and get ready for the beta download, you can find the pledge page here:
http://fpscreator.thegamecreators.com/order.php
Enjoy the BETA and for the first week just see how far you can get with what we have now, and from your feedback we can produce a new version which responds to those individual concerns. It there is anything seriously unworkable, and your specifications are not too low (see above) then we will make those our top priority. No sense moving too far ahead if we're leaving some of our pledgers behind. Can't wait to see the screenshots and YouTube videos of what you come up with!! Be sure to share your exploits with the community so we can all see what you're creating :) Until Thursday!
A tale of two halves, with a meeting at one damnably early end of the day and lots of installing and testing at the other end. The goal; to produce a beta installer that stands up to the many PC systems attempting to use it throughout Thursday as the world wakes up in stages.
It's been quite a blur since March when we started putting the prototypes together and figuring out what we wanted from this new tool. I'm very pleased with where we are right now, and I am eager to get cracking with more tweaks, fixes, optimizations, new features and more betas.
The Meet
The meeting today was simply to confirm that the beta existed, and to double check we did not miss anything. Much time was also dedicated to the next large items on our list, and the order we should tackle them. Still top of my own list is performance, and I have a few fiendish ideas to implement in the weeks to come.
LOD BLOB - This idea involves creating a few patch-work quilts of low-LOD static entities using a single vertex buffer and texture image. These LOD blobs are then used to replace distant single entities used during shadow rendering and also for the far distance of any rendered scene. The upshot is that the draw call count is vastly reduced, and we also ensure only low-LOD meshes are used in the more distant shadow renders meaning less polygons overall. They cannot replace moving entities and transparent ones, but my guess is that there will be more static than dynamic, so we will see a saving.
TERRAIN POLYS - Another obvious target, and more immediate to me, is the strange behavior of the terrain render which on the face of it seems to be rendering 350,000 polygons for a rather flat boring (and empty) scene. It might be right, but I am going to investigate. Even though modern graphics cards consider 'polygons as free', for older cards the polygon count and fill rate play a role in the final frame rate score and non more so than one of the alpha testers who is experiencing some serious woes, even with effects switched off. Strangely though, my three Ultrabooks demonstrate a decent 30fps when extra features are switched off which suggests I might just get away with running Reloaded on integrated hardware with more optimizations and newer laptops.
SERIOUSLY LOW-END - Just to make sure the Reloaded software ran on the worst of the worst, I dug out a ten year old machine running XP and an AGP graphics card for my 'silly test'.
As you can see, a blinding performance metric there for my computer :) Alas, my wonderful AGP card could not exceed to shader model 3.0 and the terrain and entities just rendered white but amazingly everything else worked fine.
As the bloom shader also rendered blank, I could not see the frame rate inside the Reloaded test game, but it's perhaps a good thing I did not. I did consider for a brief moment supporting shader model 2.0 and REALLY notching down the demands on the 3D chip, but I think it makes sense to define some borders to our low-end specification. A ten year old XP + AGP rig is probably not within that scope :)
The Test
As I write this, I am doing all sorts of boring and necessary things like formatting Ultrabooks, downloading drivers, installing stuff, testing stuff, making small tweaks and trying installers again. All necessary for a satisfactory beta roll-out, and good guidelines are being made for future releases too.
I have signed the final installer and I can report on a fresh Windows 8 install, you are asked for Administrator privileges and then the software installs without a real hitch. As the DirectX web installer is silent, my WiFi driver was not installed and it skipped it, making the software report a DirectX error. I am now creating a new installer which uses a non-quiet DirectX install so you can see the connection issue and do something about it. I have also uploaded the web installer to Rick so he can host it alongside the beta file, just in case you want to install DirectX separate from the install process (or after it).
Right now I am installing the drivers back onto the Lenovo Ideapad Yoga 13 after the fresh Windows 8 installation which should allow my older installer to finish the DirectX web install properly, and then I will either confirm compatibility with the dreaded Windows 8 or not. I will then move onto other areas of testing to ensure the file I select as the final beta file is the one that won't fall over. Last minute changes can be SO dangerous!
Signing Off
As a reminder for those that do not know, on Thursday we will be releasing the first ever BETA of the FPS Creator Reloaded product to all pledgers of the project. It is thanks to your contributions and support that we've been able to get this far and I am excited to continue working towards making your game making dreams come true.
Don't worry too much about performance on your particular system at this stage as I still have plenty of speed-up ideas I can do to the engine, and as we get real world reports we can narrow our energies toward the most recurring performance drains. It will also be apparent which systems are too low-end for our software, or whether we need to scale back the visual ambitions of the software to allow such low-end compatibility. Stay tuned to this blog to find out about my trials and tribulations in hunting down more performance gremlins.
I also have an inbox slowly filling up with non-performance items, such as a snazzy looking weapon and health screen HUD, but I think we all agree we need to crack overall speed, stability and usability before we go for the finishing touches.
Also a small note, the FPM level files are still in flux and will change for the next version so don't be too precious about any levels you create with this beta as they are unlikely to port to the new version. I will be adding a version control system to allow backward/forward compatibility with level files, but right now it's still got some old stuff in there than needs slopping out.
If any readers want to pledge now and get ready for the beta download, you can find the pledge page here:
http://fpscreator.thegamecreators.com/order.php
Enjoy the BETA and for the first week just see how far you can get with what we have now, and from your feedback we can produce a new version which responds to those individual concerns. It there is anything seriously unworkable, and your specifications are not too low (see above) then we will make those our top priority. No sense moving too far ahead if we're leaving some of our pledgers behind. Can't wait to see the screenshots and YouTube videos of what you come up with!! Be sure to share your exploits with the community so we can all see what you're creating :) Until Thursday!
Thứ Ba, 29 tháng 10, 2013
Tuesday Installations
What A Day
It was so simple on paper. Clean up the beta files, make an installer, test it on a few test systems I have here, get it ready for a small demo Wednesday morning ready for a Thursday launch. Damn paper!
Half The Day
In reality, I spent about 5 hours getting the sky to work again, and then to get the guns working again. Small almost incidental changes had the knock-on effect of causing the reflective sky to disappear, and for the gun geometry to fly all over the shop. The solution was to write a sky shader and use some older gun models to get back on track.
The Other Half
Fear not however, as my hurdles jumped, I cleaned up the files so only Reloaded specific files are used, and I created a nicely clean installer which also uses a DirectX web installer to reduce download size and also runs the VC redist installer in case you are missing any DLL files the software requires. During our alpha testing, the full zip file was around the 500MB mark. Thanks to file cleaning, and a better compression level thanks to NSIS, the new beta installer is around 190MB. This should please everyone, not least our server which is going to get hit HARD on Thursday! To make sure the download is not agony for you, we have created a silent mirror system so you will have two servers serving up your much anticipated beta file.
Signing Off
I have yet to start my compatibility testing with the new installer, but I am going to dig out an XP machine as I have received reports that all is not well on that operating system at the moment. It's also prudent to test an installer under different conditions to make sure you see what we see when it's finally on your PC.
As I won't have much time left on Wednesday to actually code, I am dividing my time this evening and tomorrow evening either hiding or finishing functionality demonstrated in the editor and engine. One example is the weapon and health panels, which although functional, are currently using placeholders. Even though I have the actual art now, it came in a little late and my current task is installer testing. Maybe if I don't tire later tonight or same time tommorow, I can add them in as they do look rather sharp!
Appeal For Rick
Rick has asked me to retract his email as the official place to send your woes to, but you can keep an eye out on the forum for news about how and where to post your findings. For this beta, I suggest you avoid submitting bug reports about the stuff that clearly is not working (as we already know about them), and make your feedback more general about the stuff that appears complete and whether we're heading in the right direction.
Appeal For Testimonials
Rick is looking for some quotes we can put in our 'Beta Press Release' about how amazing the product looks so far. If you can email him directly at rick@thegamecreators.com it will save him bouncing back to this blog every ten minutes. Much appreciated!!
It was so simple on paper. Clean up the beta files, make an installer, test it on a few test systems I have here, get it ready for a small demo Wednesday morning ready for a Thursday launch. Damn paper!
Half The Day
In reality, I spent about 5 hours getting the sky to work again, and then to get the guns working again. Small almost incidental changes had the knock-on effect of causing the reflective sky to disappear, and for the gun geometry to fly all over the shop. The solution was to write a sky shader and use some older gun models to get back on track.
The Other Half
Fear not however, as my hurdles jumped, I cleaned up the files so only Reloaded specific files are used, and I created a nicely clean installer which also uses a DirectX web installer to reduce download size and also runs the VC redist installer in case you are missing any DLL files the software requires. During our alpha testing, the full zip file was around the 500MB mark. Thanks to file cleaning, and a better compression level thanks to NSIS, the new beta installer is around 190MB. This should please everyone, not least our server which is going to get hit HARD on Thursday! To make sure the download is not agony for you, we have created a silent mirror system so you will have two servers serving up your much anticipated beta file.
Signing Off
I have yet to start my compatibility testing with the new installer, but I am going to dig out an XP machine as I have received reports that all is not well on that operating system at the moment. It's also prudent to test an installer under different conditions to make sure you see what we see when it's finally on your PC.
As I won't have much time left on Wednesday to actually code, I am dividing my time this evening and tomorrow evening either hiding or finishing functionality demonstrated in the editor and engine. One example is the weapon and health panels, which although functional, are currently using placeholders. Even though I have the actual art now, it came in a little late and my current task is installer testing. Maybe if I don't tire later tonight or same time tommorow, I can add them in as they do look rather sharp!
Appeal For Rick
Rick has asked me to retract his email as the official place to send your woes to, but you can keep an eye out on the forum for news about how and where to post your findings. For this beta, I suggest you avoid submitting bug reports about the stuff that clearly is not working (as we already know about them), and make your feedback more general about the stuff that appears complete and whether we're heading in the right direction.
Appeal For Testimonials
Rick is looking for some quotes we can put in our 'Beta Press Release' about how amazing the product looks so far. If you can email him directly at rick@thegamecreators.com it will save him bouncing back to this blog every ten minutes. Much appreciated!!
Google+ Hangouts and Photos: save some time, share your story
We could all use more time for ourselves, and less time figuring out technology. So today's improvements to Google+ Hangouts and Photos aim to take a lot of the work out of messaging, video calling and photo editing.
Hangouts
Hangouts enable conversations among close friends, as well as broadcasts with the entire world. Today we're improving both:
The Android app and video calling features will be available in a few days, while the On Air improvements will roll out over the next few weeks.
Photos and videos
Photos and videos capture life's most precious moments, but it’s way too hard to save, organize, edit and share your stuff. Google+ can make things easier, automatically.
Auto Awesome can help bring your story to life in creative ways. Today we’re adding three new techniques:
All of today’s photo and video improvements will be available this week. Auto Awesome Movie works on certain devices with Android 4.3+, but all the other app features are widely supported.
With 540 million people active across Google each month, 300 million people active in just the stream and more than 1.5 billion photos uploaded every week, the Google+ community is growing faster than we ever could have imagined. Today’s updates are our way of saying “thank you”—we hope they save you time, and help you share your story.
Posted by +Vic Gundotra, Senior Vice President
Hangouts
Hangouts enable conversations among close friends, as well as broadcasts with the entire world. Today we're improving both:
- Hangouts for Android now supports location sharing and SMS. This way you can send a map of your current location (vs. finding and typing an address), and you can send and receive SMS (vs. switching between apps). Animated GIFs also play inline.
- Broadcasters can now schedule Hangouts On Air, then promote them with a dedicated watch page. Once you're live, Control Room lets you moderate the conversation with eject and remote mute.
- In both cases, the video calling experience is significantly improved. It's now full screen across mobile and desktop, and it fixes and enhances webcam lighting automatically.
From left to right: location sharing; SMS support; and animated GIFs
From left to right: schedule your Hangout On Air; promote it with a dedicated watch page; and moderate the conversation with Control Room
From left to right: video call before lighting fixes; video call after lighting fixes
The Android app and video calling features will be available in a few days, while the On Air improvements will roll out over the next few weeks.
Photos and videos
Photos and videos capture life's most precious moments, but it’s way too hard to save, organize, edit and share your stuff. Google+ can make things easier, automatically.
- For starters, full size backups and background sync are coming soon to Google+ for iOS. This way you can backup your photos as you take them.
- In addition, finding your photos is actually fun. We now recognize over a thousand different objects—from sunsets to snowmen—so you can just type what you’re looking for, and find matching items in your library.
- Auto Enhance improves each photo you add to Google+, and now you can now dial the enhancements up or down. If you’re already processing your images elsewhere, you can choose to exempt an album entirely.
- If you like to edit on the go, then you’ll enjoy Snapseed and its new HDR Scape filter. While high dynamic range (HDR) imaging requires multiple photos to create its effect, HDR Scape can deliver similar results with a single tap.
- We’re also adding Analog Efex Pro to the Nik Collection (still just $149). With it you can reimagine your images using classic cameras and processing methods—from toy and medium format to wet plate and vintage.
From left to right: photo searches for "beach", "sunset" and "snow"
From left to right: original image; Auto Enhance at "normal"; Auto Enhance at "high"
From left to right: original image; image enhanced with Snapseed HDR Scape
- Action. Maybe it’s your child’s first gymnastic meet, or you’re skateboarding with a friend. Action can take their tumble or half pipe trick, and create a strobe-effect photograph.
- Eraser. When you’re taking pictures of landmarks, people and cars often get in the way. Eraser can take a sequence of these photos, and erase whatever’s moving to give you a “cleaner” image.
- Movie. Movie produces highlight reels from your photos and videos—complete with effects, transitions and a soundtrack—automatically. You can share the movie as is, or dive into the editing process to customize even further.
From left to right: sequence of action shots; Auto Awesome Action
From left to right: sequence of images with people in the way; Auto Awesome Eraser
All of today’s photo and video improvements will be available this week. Auto Awesome Movie works on certain devices with Android 4.3+, but all the other app features are widely supported.
With 540 million people active across Google each month, 300 million people active in just the stream and more than 1.5 billion photos uploaded every week, the Google+ community is growing faster than we ever could have imagined. Today’s updates are our way of saying “thank you”—we hope they save you time, and help you share your story.
Posted by +Vic Gundotra, Senior Vice President
Thứ Hai, 28 tháng 10, 2013
Monday March
Only A Few Days
There is some comfort that this version is not going into a retail box, being duplicated 10,000 times or going on stage at E3. It's also comforting that the intended audience are going help and feedback back, rather than criticize and condemn thanks to the pledge system of development.
Had a good day today of performance hunting, and found many islands of slow which I took great pleasure in sinking. Everything from shadows, post processing, too many duplicated object rendering, redundant rendering and small improvements in code layout all contributed to the FPS creeping up from what we had a few days ago.
As you can see above, I can get 200fps on an empty terrain level. Also bear in mind this was an old shot and I have made improvements since. Of course you will not need such a frame rate but it was necessary to get accurate measurements of each module in isolation which means switching everything off.
Graphic Options Panel
Thanks to the options panel, each user of the beta can also tweak which parts of the engine should be active, and in some cases the degree of support is provided such as the Reflection mode which when set to zero completely removes the reflection from the water. When set to 1-50 the sky is reflected but no objects or terrain. When set to 51-100 all reflection activity resumes. As we proceed, I will add more fidelity to these graphic option modes so that you can tailor the engine experience to suit your hardware, and ultimately your intended audience.
VSYNC Option
A timely request from the blog comments saw the introduction of a new flag in SETUP.INI file which allows the engine to boot the game in VSYNC mode ON or OFF. This means you can cap your frame rate to the refresh rate of your graphics card for super smooth zero-tear screen rendering. By default I might keep this off for the purposes of the beta so we can see how high some users will get with their performance metrics.
Keeping The Sky
I also allowed the sky box to remain, even if the camera distance was pulled in to an extreme degree. I am not sure how to solve the issue of FOG vs SKY yet, as the two rather clash but I will let the beta process resolve that one :)
Alpha Users Beavering Away
Another fine shot from our sound guy, this time deep in ice mountain territory and close to the site of a crashed saucer.
It is my fond hope that I can do justice inside the engine to the ideas and imagination you guys are about to unleash onto the world with Reloaded. It's not just about getting performance, but getting it in the kind of situations your game will find itself. Imagine the scene above as the site from which you will sniper the guards patrolling the complex. Just imagine how much AI the engine will need to govern to show you the 20-30 enemies you have secreted around the base. I have my work cut out, and why I think the employment of LUA (or other super fast script) and DarkAI over a multi-core solution is vital to create the kind of scenarios your games will eventually demand.
Signing Off
For the remaining few hours, I am going to re-align the AI with the various frame rates the engine can produce and get things like movement speeds, animation speeds and AI work-load balanced out. This should then allow the character behaviors to seem more normal and produce a good foundation for moving forward with AI. Tuesday will see the cleaning up of the beta files, production of an installer and testing on various Windows versions to ensure a fresh install works out of the box.
On Wednesday I have a meeting to look at the beta version from Tuesday evening so there will not be much happening on that day except talking and recovering from talking. Just enough time and energy to upload the file to the server and batten down the hatches for a huge amount of bandwidth sucking activity come Thursday.
We don't have a bug base set-up as I could not find an appropriate one for the beta, but you can use the Reloaded Forum to ask questions about how to do things, but specific bug reports should be sent to rick@thegamecreators.com until further notice (that is, until we have a more formal bug reporting system in place). Avoid sending them to me directly as I will be putting filters in place so that all reports to me have been confirmed by at least two people, and a full reproducible report creating so I can focus on fixes rather than attempting to reproduce bugs.
There is some comfort that this version is not going into a retail box, being duplicated 10,000 times or going on stage at E3. It's also comforting that the intended audience are going help and feedback back, rather than criticize and condemn thanks to the pledge system of development.
Had a good day today of performance hunting, and found many islands of slow which I took great pleasure in sinking. Everything from shadows, post processing, too many duplicated object rendering, redundant rendering and small improvements in code layout all contributed to the FPS creeping up from what we had a few days ago.
As you can see above, I can get 200fps on an empty terrain level. Also bear in mind this was an old shot and I have made improvements since. Of course you will not need such a frame rate but it was necessary to get accurate measurements of each module in isolation which means switching everything off.
Graphic Options Panel
Thanks to the options panel, each user of the beta can also tweak which parts of the engine should be active, and in some cases the degree of support is provided such as the Reflection mode which when set to zero completely removes the reflection from the water. When set to 1-50 the sky is reflected but no objects or terrain. When set to 51-100 all reflection activity resumes. As we proceed, I will add more fidelity to these graphic option modes so that you can tailor the engine experience to suit your hardware, and ultimately your intended audience.
VSYNC Option
A timely request from the blog comments saw the introduction of a new flag in SETUP.INI file which allows the engine to boot the game in VSYNC mode ON or OFF. This means you can cap your frame rate to the refresh rate of your graphics card for super smooth zero-tear screen rendering. By default I might keep this off for the purposes of the beta so we can see how high some users will get with their performance metrics.
Keeping The Sky
I also allowed the sky box to remain, even if the camera distance was pulled in to an extreme degree. I am not sure how to solve the issue of FOG vs SKY yet, as the two rather clash but I will let the beta process resolve that one :)
Alpha Users Beavering Away
Another fine shot from our sound guy, this time deep in ice mountain territory and close to the site of a crashed saucer.
It is my fond hope that I can do justice inside the engine to the ideas and imagination you guys are about to unleash onto the world with Reloaded. It's not just about getting performance, but getting it in the kind of situations your game will find itself. Imagine the scene above as the site from which you will sniper the guards patrolling the complex. Just imagine how much AI the engine will need to govern to show you the 20-30 enemies you have secreted around the base. I have my work cut out, and why I think the employment of LUA (or other super fast script) and DarkAI over a multi-core solution is vital to create the kind of scenarios your games will eventually demand.
Signing Off
For the remaining few hours, I am going to re-align the AI with the various frame rates the engine can produce and get things like movement speeds, animation speeds and AI work-load balanced out. This should then allow the character behaviors to seem more normal and produce a good foundation for moving forward with AI. Tuesday will see the cleaning up of the beta files, production of an installer and testing on various Windows versions to ensure a fresh install works out of the box.
On Wednesday I have a meeting to look at the beta version from Tuesday evening so there will not be much happening on that day except talking and recovering from talking. Just enough time and energy to upload the file to the server and batten down the hatches for a huge amount of bandwidth sucking activity come Thursday.
We don't have a bug base set-up as I could not find an appropriate one for the beta, but you can use the Reloaded Forum to ask questions about how to do things, but specific bug reports should be sent to rick@thegamecreators.com until further notice (that is, until we have a more formal bug reporting system in place). Avoid sending them to me directly as I will be putting filters in place so that all reports to me have been confirmed by at least two people, and a full reproducible report creating so I can focus on fixes rather than attempting to reproduce bugs.
Chủ Nhật, 27 tháng 10, 2013
Sunday Slicerthon
Priority Performance
As you know, Lee has gone paranoid on performance, and looking at the engine as one big speed making machine. To that end, I have been working through the ideas I have to speed everything up. You can think of it akin to a statement from the previous blog comments which I quite liked:
Project Manager: "Amazing, how did you get a 1000% speed increase?!"
Coder: "Simple, I just switched everything off!"
To that end, I have added a new slider panel called "Graphic Options" which allows me to selectively switch of hungry sub-processes, and eventually allow different 'modes' of operation yielding various speed vs benefits to choose from. Right now they just switch stuff off gracefully in real-time.
I have also extended the performance monitor a little more with polygon and draw call readouts, as this will also be vital in understanding whether objects are being rendered needlessly.
I also got a tip that the IDE was draining performance in the background, and on investigation it turns out a rogue mouse update function call was (and this you won't believe), reading a file for two strings and producing a formatted string from them. The code then proceeded to do nothing with that string! Amazing. Anyhoo, removed that code and the IDE went from 25% usage down to 0% usage when in test game mode :)
Signing Off
My latest screen shot shows 144fps, which is what I get with an empty terrain and grass level with no reflections, shadows or light rays. Turns out the test game was also being capped at 80fps which I have now fixed, allowing the engine to run as fast as it can. Next is top investigate each of the 575,000 polygons and 191 draw calls to see what they are contributing. Once I have stripped everything back to the bare walls, and introduced Graphic Option controls for them, I can start putting everything back in an optimized way.
Not been brave enough to touch the NSIGHT tool yet. I also have the Intel GPA tool on standby too, so plenty of back-up if things get sticky. I figured before turning to these assistants that I should proceed to implement my own tried and tested techniques for speed gain (that is, to remove all the stupid code) ;) I have also managed to obtain a low-end dedicated NVIDIA card over the weekend (under 1000 score) so will be able to conduct some remote testing with NSIGHT a little sooner than anticipated!
As you know, Lee has gone paranoid on performance, and looking at the engine as one big speed making machine. To that end, I have been working through the ideas I have to speed everything up. You can think of it akin to a statement from the previous blog comments which I quite liked:
Project Manager: "Amazing, how did you get a 1000% speed increase?!"
Coder: "Simple, I just switched everything off!"
To that end, I have added a new slider panel called "Graphic Options" which allows me to selectively switch of hungry sub-processes, and eventually allow different 'modes' of operation yielding various speed vs benefits to choose from. Right now they just switch stuff off gracefully in real-time.
I have also extended the performance monitor a little more with polygon and draw call readouts, as this will also be vital in understanding whether objects are being rendered needlessly.
I also got a tip that the IDE was draining performance in the background, and on investigation it turns out a rogue mouse update function call was (and this you won't believe), reading a file for two strings and producing a formatted string from them. The code then proceeded to do nothing with that string! Amazing. Anyhoo, removed that code and the IDE went from 25% usage down to 0% usage when in test game mode :)
Signing Off
My latest screen shot shows 144fps, which is what I get with an empty terrain and grass level with no reflections, shadows or light rays. Turns out the test game was also being capped at 80fps which I have now fixed, allowing the engine to run as fast as it can. Next is top investigate each of the 575,000 polygons and 191 draw calls to see what they are contributing. Once I have stripped everything back to the bare walls, and introduced Graphic Option controls for them, I can start putting everything back in an optimized way.
Not been brave enough to touch the NSIGHT tool yet. I also have the Intel GPA tool on standby too, so plenty of back-up if things get sticky. I figured before turning to these assistants that I should proceed to implement my own tried and tested techniques for speed gain (that is, to remove all the stupid code) ;) I have also managed to obtain a low-end dedicated NVIDIA card over the weekend (under 1000 score) so will be able to conduct some remote testing with NSIGHT a little sooner than anticipated!
Thứ Sáu, 25 tháng 10, 2013
Friday In Study
Small Blog Day
Nothing supreme to report today. Spent most of Friday studying NSIGHT and it's various profiling capabilities. It has the very cool feature of being able to remote debug, allowing for a true reading of performance on the application. The downside is that I installed the NVIDIA card in my development machine, so now I need to buy another card to install into the target machine for true profiling. No small inconvenience except that with the time constraints any remote debugging will have to be conducted after the beta release. In the meantime I am sure the 'local debugging' mode will be revealing and should vastly improve the performance of my GPU antics.
Signing Off
As we're in the final gallop to the beta, I will probably make a special weekend blog to reveal more of my discoveries. We have already determined that 90% of the slow-down is due to 'rendering stuff' which means NSIGHT has a vital role to play in identifying those areas that need the most attention. Until then, please continue providing the performance shots as they are a great indiicator to me how low I should be setting the graphics card bar. Right now it looks like a shade over the Intel HD3000 benchmark, which is painfully low and requires me to change my views on what constitutes a mid-range card ;)
Nothing supreme to report today. Spent most of Friday studying NSIGHT and it's various profiling capabilities. It has the very cool feature of being able to remote debug, allowing for a true reading of performance on the application. The downside is that I installed the NVIDIA card in my development machine, so now I need to buy another card to install into the target machine for true profiling. No small inconvenience except that with the time constraints any remote debugging will have to be conducted after the beta release. In the meantime I am sure the 'local debugging' mode will be revealing and should vastly improve the performance of my GPU antics.
Signing Off
As we're in the final gallop to the beta, I will probably make a special weekend blog to reveal more of my discoveries. We have already determined that 90% of the slow-down is due to 'rendering stuff' which means NSIGHT has a vital role to play in identifying those areas that need the most attention. Until then, please continue providing the performance shots as they are a great indiicator to me how low I should be setting the graphics card bar. Right now it looks like a shade over the Intel HD3000 benchmark, which is painfully low and requires me to change my views on what constitutes a mid-range card ;)
Thứ Năm, 24 tháng 10, 2013
Thursday Super Tired
A Pile Of Emails and Plenty Of Zzzz's
I set off this morning at 8:30AM and did not get back until after 5PM, driving both ways and utterly drained. The mission was a new pair of glasses for my continued coding, and of course they will not now be ready until November so back to square one almost.
I started going through emails but suddenly found my head loll right into the keyboard while reading and responding to emails. I have dealt with the urgent ones, and look mournfully at the 14 remaining ones. Fortunately all juicy FPSC emails, but each one requiring some effort that does not directly contribute towards performance profiling.
Profiling Tool
I also had a recommendation from an alpha tester for a piece of software that compares your graphics card with every other published graphics card in the market and it's quite an eye opener where you find yourself sitting in the grand scheme of things.
I am curious where you guys and gals sit amongst the grand scheme of things, and if anyone would like to share a screen grab of a card they feel should be able to run Reloaded, comment a link here so I can see. The software is called PerformanceTest 8.0 from PassMark:
I am running a GTX 650 Ti Boost, which I consider a middle of the road card capable of running Reloaded once the performance tuning has been done. You can use this litmus test to see if your card is anywhere near this benchmark so you know how your system compares to the one used to develop Reloaded.
Signing Off
I am posting this blog a little early (and short) just in case I fall asleep at the keyboard and miss Thursday's posting. I will continue chasing engine speed for as long as I can, and hopefully report some more improvements at the weekend. I am still quite happy that all my attention will be on the GPU activities as I have a bit of experience in this area and have a few ideas already.
Alpha Tester Sneak Peek
As you may know we have a few alpha testers producing screen shots in top secret to see what can be created with the early version of the software, and I received a few of them in the inbox, one of which I could not resist but show.
Notice the attention to detail in the mountain sculpture, and the stepping effect. All my mountains so far have been smooth blobby hills, and this shot from Mr H. really showed me what could be done with a little care and patience with the sculpting tool. All the more impressive as we have not finished adding all the sculpting brush modes yet! Nice work dude.
Thứ Tư, 23 tháng 10, 2013
Wednesday Battle: LUA vs FPI
Performance Day
Thursday I will be out of the office getting my eyeballs replaced, but today was all about performance profiling and answering emails, and then some more performance profiling.
The good news is that I have gone from 21fps to 45fps. The bad news is that I had to switch off all shadows to do it ;) Better news is that I discovered that some file map communication code written to obtain Windows mouse coordinates from the parent IDE application was a serious drain, and upon removing it (only needed for actual TAB page views) rescued some substantial performance back from (or should that be for) the engine.
I have also extended the division of metrics within the main engine so I can see at a glance more fine grain detail of what the engine cycle is doing.
As you can see, apart from Misc2 (which I am still investigating but suspected to be a rogue value), the main energy draws are from the rendering step which is the GPU stall while it produces the visual you see above, and a little bit of terrain and AI processing. When I include the shadow rendering, all other performance considerations shrink and it seems the performance is entirely dictated by the amount of 'rendering and shadow rendering' being done by the engine.
In a way this is good, as I can focus plenty of effort on a single module for instant speed-up. I also have some great tools to assist me, and I know for a fact I can create multiple techniques within the shader to suit different system specifications (for LOW, MEDIUM and HIGH). It's pretty good fun performance profiling as you have nothing to lose and everything to gain, and can be quite a buzz when you gain a few FPS. Much more to come!
The Big Debate: FPI vs LUA
Ever since the idea was proposed, the topic of which scripting language is better for Reloaded has been pretty hot of late and I have been asked to step in and clarify the situation as to where we are.
I wrote the FPI (FPSC Instructions) language to quickly allow for simple conditions and actions within the game world. It was never meant to be a language as such, and a million light years away from something like DBP. It was ideal for quick one liners, such as turn on a light when you enter a zone, but became almost laughable when you asked it to coordinate the mental abstractions of an ally character following you around a combat scene. I would even cringe at having to apply a state value half way through the script, so that the subsequent conditions where skipped, only to set he state value to the intended value at the end of the script. If you read that in pseudo-code, you'd severely admonish the student responsible:
IF A=1 THEN A=3
IF A=2 THEN DO THING COOL
IF A=3 THEN A=2
The FPI language scores marks for being one of the smallest language on earth, it's syntax almost entirely comprising of a colon and semi-colon. It is perhaps this simple format that has earned it such popularity, and when you start to study the built-in scripts, you're guaranteed to learn the logic within a few minutes.
The basic problem with FPI is that the underlying 'interpreter engine' which processes all the commands is written in DBP, and so each command is actually a trigger point for a multitude of other commands to fire before returning to the main thread. Multiply this with the many commands found in the script, and then by the hundreds of entities that are firing off said scripts and you have a substantial drain on overall performance. Indeed, one of the complaints levied against the classic version of FPSC was that too many scripts in a level would start to depreciate frame rate and force the the creator to clear their level of heavy scripts, divide up their levels or worse, scrap their ambitions for more attainable goals.
When we arrived at the decision to scrap the segment system and re-imagine a new way to construct large buildings and structures, it gave us the confidence to ask similar questions about other parts of the system. As fond as we are about FPI, we also know it is the silent assassin of many large and ambitious levels, and if we are to aim high we must look critically at each part of the whole.
Understand that we have not decided unilaterally to drop FPI and instate LUA. We still have to do some prototyping and profiling to see whether the integration of LUA is viable and improves performance of the engine. There is also the possibility of moving FPI into the core engine, executing the instructions outside of DBP. Therefore, you can rest uneasy in the knowledge a decision has not yet been made, and every effort will be made to work out which solution is best for Reloaded. To that end, you are welcome to continue this discussion, and hopefully arrive at a consensus as to ease of use and suitability.
A Question Of Ease
FPI is easier than LUA. LUA is much nicer than FPI. FPI is simpler than LUA. LUA is easier to read then FPI. The mystery is that all these sentences are correct. Based on who you are, you will find a sentence you can agree with. I think each has their charms. Unfortunately I have been in the situation of supporting two parallel paths of near identical functionality before and I must confess that supporting both can be agonizing and demoralizing. It was this past experience that lead me to conclude there should be only one. It was this decision that fired up the debate we are all enjoying.
I was fortunate enough to have spent a few years teaching at Masters degree level, and I learned a few things about 'ease of use' or more accurately 'ease of understanding'. Just as secret knowledge becomes commonplace once explained, so to does a script or language. If you learned FPI, you can learn LUA. If you know LUA, you can learn FPI. The underlying lessons are identical! If THIS happens, do THAT. I'm afraid that's what programming boils down to. If THIS, then do THAT.
From a personal point of view, and this is from a coder who's regrettably forgotten more languages that he presently knows, the syntax of LUA is very reminiscent of BASIC, which remains my all time favorite language. The idea of IF X THEN Y ENDIF really makes sense to me, and is the principal building block of any large electronic edifice. My prediction is that there will be more scripters for Reloaded than we ever had with FPI, not least because the scripts we will provide will become readable!
A final note addressing Reloaded ease of use. We are designing the software so that scripting by no means a requirement of the creative process. In fact, I expect only around 5% of users should ever need to break out into the world of scripting. The remaining 95% will find the combination of entity properties, sliders for in-game adjustment and level configuration more than sufficient to create a unique experience for your users. The scripting is there for those brave souls brazen enough to think they can create better scripts than TGC :) Rest assured that we will provide a wide variety of LUA scripts, assigned by default to relevant assets, dealing with all the game functionalties you require from opening a locked door, to commanding a battalion of soldiers to follow you into hell. You only have to look at our history of products to know that 'ease of use' is one of the goals we constantly strive for, and we understand that many of you have no desire to program, and why you use FPSC in the first place.
What's Next
You will want to know what happens now. What is the decision! For this I will need to create one or two prototypes, principally to test how the integration into the main Reloaded engine will be, and also to check whether the performance benefits are worth the transition. I also want to study the existing FPI language (which has doubled in size since the modders took over) and understand the scope of maintaining and/or moving it to a more internal engine that can process at higher speeds.
Aside from the professional reasons, I also want time to play with the LUA syntax and get a feel for how it might work inside the Reloaded universe, and whether it is a good fit. LUA is not the only scripting language out there, and my researches might turn up something newer and more shiny! I also promise to try and resist the urge to create a new language for the occasion :)
Signing Off
Hopefully I have brought everything up to date, and hopefully I can bring you more performance improvement news Thursday evening, when I explore the deeper GPU realms and return with some worthy finds.
A Bit Of Fun
Rick decided to film an impromptu video as we concluded our meeting on Tuesday, and then put it on YouTube (bless him). Just in case you missed it, I have hosted it here so you don't miss out on any of my mindless waffle.
Once Reloaded is in a state where I can show my face in public, I am pretty sure there will be plenty more videos for you (and me) to cringe over.
Thursday I will be out of the office getting my eyeballs replaced, but today was all about performance profiling and answering emails, and then some more performance profiling.
The good news is that I have gone from 21fps to 45fps. The bad news is that I had to switch off all shadows to do it ;) Better news is that I discovered that some file map communication code written to obtain Windows mouse coordinates from the parent IDE application was a serious drain, and upon removing it (only needed for actual TAB page views) rescued some substantial performance back from (or should that be for) the engine.
I have also extended the division of metrics within the main engine so I can see at a glance more fine grain detail of what the engine cycle is doing.
As you can see, apart from Misc2 (which I am still investigating but suspected to be a rogue value), the main energy draws are from the rendering step which is the GPU stall while it produces the visual you see above, and a little bit of terrain and AI processing. When I include the shadow rendering, all other performance considerations shrink and it seems the performance is entirely dictated by the amount of 'rendering and shadow rendering' being done by the engine.
In a way this is good, as I can focus plenty of effort on a single module for instant speed-up. I also have some great tools to assist me, and I know for a fact I can create multiple techniques within the shader to suit different system specifications (for LOW, MEDIUM and HIGH). It's pretty good fun performance profiling as you have nothing to lose and everything to gain, and can be quite a buzz when you gain a few FPS. Much more to come!
The Big Debate: FPI vs LUA
Ever since the idea was proposed, the topic of which scripting language is better for Reloaded has been pretty hot of late and I have been asked to step in and clarify the situation as to where we are.
I wrote the FPI (FPSC Instructions) language to quickly allow for simple conditions and actions within the game world. It was never meant to be a language as such, and a million light years away from something like DBP. It was ideal for quick one liners, such as turn on a light when you enter a zone, but became almost laughable when you asked it to coordinate the mental abstractions of an ally character following you around a combat scene. I would even cringe at having to apply a state value half way through the script, so that the subsequent conditions where skipped, only to set he state value to the intended value at the end of the script. If you read that in pseudo-code, you'd severely admonish the student responsible:
IF A=1 THEN A=3
IF A=2 THEN DO THING COOL
IF A=3 THEN A=2
The FPI language scores marks for being one of the smallest language on earth, it's syntax almost entirely comprising of a colon and semi-colon. It is perhaps this simple format that has earned it such popularity, and when you start to study the built-in scripts, you're guaranteed to learn the logic within a few minutes.
The basic problem with FPI is that the underlying 'interpreter engine' which processes all the commands is written in DBP, and so each command is actually a trigger point for a multitude of other commands to fire before returning to the main thread. Multiply this with the many commands found in the script, and then by the hundreds of entities that are firing off said scripts and you have a substantial drain on overall performance. Indeed, one of the complaints levied against the classic version of FPSC was that too many scripts in a level would start to depreciate frame rate and force the the creator to clear their level of heavy scripts, divide up their levels or worse, scrap their ambitions for more attainable goals.
When we arrived at the decision to scrap the segment system and re-imagine a new way to construct large buildings and structures, it gave us the confidence to ask similar questions about other parts of the system. As fond as we are about FPI, we also know it is the silent assassin of many large and ambitious levels, and if we are to aim high we must look critically at each part of the whole.
Understand that we have not decided unilaterally to drop FPI and instate LUA. We still have to do some prototyping and profiling to see whether the integration of LUA is viable and improves performance of the engine. There is also the possibility of moving FPI into the core engine, executing the instructions outside of DBP. Therefore, you can rest uneasy in the knowledge a decision has not yet been made, and every effort will be made to work out which solution is best for Reloaded. To that end, you are welcome to continue this discussion, and hopefully arrive at a consensus as to ease of use and suitability.
A Question Of Ease
FPI is easier than LUA. LUA is much nicer than FPI. FPI is simpler than LUA. LUA is easier to read then FPI. The mystery is that all these sentences are correct. Based on who you are, you will find a sentence you can agree with. I think each has their charms. Unfortunately I have been in the situation of supporting two parallel paths of near identical functionality before and I must confess that supporting both can be agonizing and demoralizing. It was this past experience that lead me to conclude there should be only one. It was this decision that fired up the debate we are all enjoying.
I was fortunate enough to have spent a few years teaching at Masters degree level, and I learned a few things about 'ease of use' or more accurately 'ease of understanding'. Just as secret knowledge becomes commonplace once explained, so to does a script or language. If you learned FPI, you can learn LUA. If you know LUA, you can learn FPI. The underlying lessons are identical! If THIS happens, do THAT. I'm afraid that's what programming boils down to. If THIS, then do THAT.
From a personal point of view, and this is from a coder who's regrettably forgotten more languages that he presently knows, the syntax of LUA is very reminiscent of BASIC, which remains my all time favorite language. The idea of IF X THEN Y ENDIF really makes sense to me, and is the principal building block of any large electronic edifice. My prediction is that there will be more scripters for Reloaded than we ever had with FPI, not least because the scripts we will provide will become readable!
A final note addressing Reloaded ease of use. We are designing the software so that scripting by no means a requirement of the creative process. In fact, I expect only around 5% of users should ever need to break out into the world of scripting. The remaining 95% will find the combination of entity properties, sliders for in-game adjustment and level configuration more than sufficient to create a unique experience for your users. The scripting is there for those brave souls brazen enough to think they can create better scripts than TGC :) Rest assured that we will provide a wide variety of LUA scripts, assigned by default to relevant assets, dealing with all the game functionalties you require from opening a locked door, to commanding a battalion of soldiers to follow you into hell. You only have to look at our history of products to know that 'ease of use' is one of the goals we constantly strive for, and we understand that many of you have no desire to program, and why you use FPSC in the first place.
What's Next
You will want to know what happens now. What is the decision! For this I will need to create one or two prototypes, principally to test how the integration into the main Reloaded engine will be, and also to check whether the performance benefits are worth the transition. I also want to study the existing FPI language (which has doubled in size since the modders took over) and understand the scope of maintaining and/or moving it to a more internal engine that can process at higher speeds.
Aside from the professional reasons, I also want time to play with the LUA syntax and get a feel for how it might work inside the Reloaded universe, and whether it is a good fit. LUA is not the only scripting language out there, and my researches might turn up something newer and more shiny! I also promise to try and resist the urge to create a new language for the occasion :)
Signing Off
Hopefully I have brought everything up to date, and hopefully I can bring you more performance improvement news Thursday evening, when I explore the deeper GPU realms and return with some worthy finds.
A Bit Of Fun
Rick decided to film an impromptu video as we concluded our meeting on Tuesday, and then put it on YouTube (bless him). Just in case you missed it, I have hosted it here so you don't miss out on any of my mindless waffle.
Once Reloaded is in a state where I can show my face in public, I am pretty sure there will be plenty more videos for you (and me) to cringe over.
Thứ Ba, 22 tháng 10, 2013
Tuesday Talkathon
The Day
Starting at 8AM, I started talking and did not stop until 2:20PM. After a cup of coffee, I had a conference call and talked intermittently for another 95 minutes. After 8 hours of continual chatter, I pretty much exhausted my tank for self expression!
The Meeting
A productive meeting, which clearly trivialized some items on the project list and magnified others. The top priority agreed by all was the matter of engine performance, overruling pretty much every other feature consideration. The demo itself performed well enough, with only smoothing and tweaking to bring it up to scratch, but the lack-luster performance clearly affected the whole experience. My PC is no slouch, not a high-end unit (three years old at least), but I should be getting MUCH better numbers from the frame rate.
The conclusion was that I should spend several DAYS just on performance, and keep drilling down until every lazy function and process has been chased from the software. To this end I began my profiling activity.
Profiling
The art and science of profiling is the methods by which a programmer can determine which individual component of a larger more complex system is causing the greatest burden on overall performance. The identification of the most serious bottle-necks will invariably lead to rapid increases in speed, but finding them can be tricky.
To hand I have a profiler (all be it a simple one) in the engine already, tracking the time taken to execute each of the main processes. Right now the values returned do not make a whole lot of sense, showing 'AI and Physics' taking almost no time and 'terrain and misc' consuming over 80% between them. I also have the NSIGHT GPU profiler and compatible graphics card which will allow me to dive deep into the cost of the shaders and video memory I am using. I also have a full Intel developer suite, allowing me to make some very detailed profiles of the CPU and threading activity of the engine too.
I have the basis of some insanely precise profiling, all I am requiring is some fresh eyes and daylight. Having the green light from the management team to post-pone adding more assets and tweaks, and focus entirely on getting the engine as fast as possible is music to me, and I am sure that everyone on the list to receive the impending beta will also delight in this pursuit.
Signing Off
As I promised a screen shot, and I am sure the idea of a mini-game might have tantalized unduly, I attach one here for your consideration.
It shows all the slider panels the engine has so far, and as you see I am getting carried away with them. The backdrop shows a scene from my little game, just before the compound entrance and nasty enemies beyond. Past the buildings is a dock and freedom (well, a win zone).
What I really want to enter into evidence is not the completeness of the game or my make-shift scene, but the present FPS count of 21. My hope is to bring you another screen shot of much the same scene but a considerably higher number. All my energies this week will be to that end, and hopefully have some interesting stories for you as to where the bottle-necks where hiding.
Starting at 8AM, I started talking and did not stop until 2:20PM. After a cup of coffee, I had a conference call and talked intermittently for another 95 minutes. After 8 hours of continual chatter, I pretty much exhausted my tank for self expression!
The Meeting
A productive meeting, which clearly trivialized some items on the project list and magnified others. The top priority agreed by all was the matter of engine performance, overruling pretty much every other feature consideration. The demo itself performed well enough, with only smoothing and tweaking to bring it up to scratch, but the lack-luster performance clearly affected the whole experience. My PC is no slouch, not a high-end unit (three years old at least), but I should be getting MUCH better numbers from the frame rate.
The conclusion was that I should spend several DAYS just on performance, and keep drilling down until every lazy function and process has been chased from the software. To this end I began my profiling activity.
Profiling
The art and science of profiling is the methods by which a programmer can determine which individual component of a larger more complex system is causing the greatest burden on overall performance. The identification of the most serious bottle-necks will invariably lead to rapid increases in speed, but finding them can be tricky.
To hand I have a profiler (all be it a simple one) in the engine already, tracking the time taken to execute each of the main processes. Right now the values returned do not make a whole lot of sense, showing 'AI and Physics' taking almost no time and 'terrain and misc' consuming over 80% between them. I also have the NSIGHT GPU profiler and compatible graphics card which will allow me to dive deep into the cost of the shaders and video memory I am using. I also have a full Intel developer suite, allowing me to make some very detailed profiles of the CPU and threading activity of the engine too.
I have the basis of some insanely precise profiling, all I am requiring is some fresh eyes and daylight. Having the green light from the management team to post-pone adding more assets and tweaks, and focus entirely on getting the engine as fast as possible is music to me, and I am sure that everyone on the list to receive the impending beta will also delight in this pursuit.
Signing Off
As I promised a screen shot, and I am sure the idea of a mini-game might have tantalized unduly, I attach one here for your consideration.
It shows all the slider panels the engine has so far, and as you see I am getting carried away with them. The backdrop shows a scene from my little game, just before the compound entrance and nasty enemies beyond. Past the buildings is a dock and freedom (well, a win zone).
What I really want to enter into evidence is not the completeness of the game or my make-shift scene, but the present FPS count of 21. My hope is to bring you another screen shot of much the same scene but a considerably higher number. All my energies this week will be to that end, and hopefully have some interesting stories for you as to where the bottle-necks where hiding.
Thứ Hai, 21 tháng 10, 2013
Monday Prep
Monday Meeting Prep Day
Prepare for a very short blog, as I have spent the day preparing for a meeting on Tuesday and have left no time to blog about the days activities, just enough time to write this brief note and then a few hours kip.
A Small Game Goal
My goal today was to get the makings of a very small game in place, which meant adding workable AI, physics, health, damage on both sides, a small level to combat within and so forth.
The good news is that I managed it, but I must stress the 'small' and it has also highlighted some more areas I need to look closer at as well. I added some nice touches though such as gun flash for the enemy and player, which really makes the action pop!
Signing Off
A more generous blog will follow on Tuesday with some shots. Most of the day will be 'meeting mode' which basically involves me talking for seven hours, so I won't be fit for much that evening, but I will certainly see if I can polish off the edges of what I have done today and show you some peeks.
It is also very likely priorities will be changed and tasks shifted around as a direct result of the meeting, so be prepared for anything in Tuesday's blog!
Prepare for a very short blog, as I have spent the day preparing for a meeting on Tuesday and have left no time to blog about the days activities, just enough time to write this brief note and then a few hours kip.
A Small Game Goal
My goal today was to get the makings of a very small game in place, which meant adding workable AI, physics, health, damage on both sides, a small level to combat within and so forth.
The good news is that I managed it, but I must stress the 'small' and it has also highlighted some more areas I need to look closer at as well. I added some nice touches though such as gun flash for the enemy and player, which really makes the action pop!
Signing Off
A more generous blog will follow on Tuesday with some shots. Most of the day will be 'meeting mode' which basically involves me talking for seven hours, so I won't be fit for much that evening, but I will certainly see if I can polish off the edges of what I have done today and show you some peeks.
It is also very likely priorities will be changed and tasks shifted around as a direct result of the meeting, so be prepared for anything in Tuesday's blog!
New free expression tools from Google Ideas
As long as people have expressed ideas, others have tried to silence them. Today one out of every three people lives in a society that is severely censored. Online barriers can include everything from filters that block content to targeted attacks designed to take down websites. For many people, these obstacles are more than an inconvenience—they represent full-scale repression.
This week, in partnership with the Council on Foreign Relations and the Gen Next Foundation, Google Ideas—our “think/do tank”—is hosting a summit in New York entitled “Conflict in a Connected World.”
The summit brings together “hacktivists,” security experts, entrepreneurs, dissidents and others to explore the changing nature of conflict and how online tools and can both harm and protect. We’re also assessing what might be done to better protect people confronting online censorship. With our partners, we will launch several new products and initiatives designed to help:
Posted by Jared Cohen, Director, Google Ideas
This week, in partnership with the Council on Foreign Relations and the Gen Next Foundation, Google Ideas—our “think/do tank”—is hosting a summit in New York entitled “Conflict in a Connected World.”
The summit brings together “hacktivists,” security experts, entrepreneurs, dissidents and others to explore the changing nature of conflict and how online tools and can both harm and protect. We’re also assessing what might be done to better protect people confronting online censorship. With our partners, we will launch several new products and initiatives designed to help:
- Project Shield is an initiative that enables people to use Google’s technology to better protect websites that might otherwise have been taken offline by “distributed denial of service” (DDoS) attacks. We’re currently inviting webmasters serving independent news, human rights, and elections-related content to apply to join our next round of trusted testers.
- The Digital Attack Map is a live data visualization, built through a collaboration between Arbor Networks and Google Ideas, that maps DDoS attacks designed to take down websites—and their content—around the globe. This tool shows real-time anonymous traffic data related to these attacks on free speech, and also lets people explore historic trends and see related news reports of outages happening on a given day.
- uProxy is a new browser extension under development that lets friends provide each other with a trusted pathway to the web, helping protect an Internet connection from filtering, surveillance or misdirection. The University of Washington and Brave New Software developed the tool, which was seeded by Google Ideas. To learn more about the challenges uProxy aims to address, watch our video.
Posted by Jared Cohen, Director, Google Ideas
Google Media Tools: a new intersection for newsgathering
The New York Times used Google+ Hangouts to interview U.S. Secretary of State John Kerry about Syria’s chemical weapons. The Weather Channel used Google Earth to illustrate the damage of Superstorm Sandy through dramatic before and after satellite images and live YouTube video. And Svenska Dagbladet used the Google Maps API and crowdsourced information from readers to plot disparities in neighborhood mortgage rates, generating a meaningful debate in Sweden.
These are just a handful of ways journalists around the world are already using the Internet and Google tools to report the news, visualize data and improve their storytelling capabilities. To continue helping journalists report the news in new and compelling ways, we’ve launched Google Media Tools, a centralized hub aimed at empowering journalists of all skill levels with more ways to connect with their audiences and communities.
The site—which we unveiled last week at Online News Association ‘13 (ONA), a premier digital journalism conference—features a variety of ways to do everything from research to developing to publishing. There are many tips and tricks to make technology do some of the heavy lifting in the daily lives of journalists. The site also showcases the power of the Internet overall in reaching new audiences and giving journalists more ways to make an impact.
We’ll add more resources including case studies, tutorials and expanded content in the coming months, and will soon launch the site in other languages as well.
Posted by Daniel Sieberg, Head of Media Outreach at Google
These are just a handful of ways journalists around the world are already using the Internet and Google tools to report the news, visualize data and improve their storytelling capabilities. To continue helping journalists report the news in new and compelling ways, we’ve launched Google Media Tools, a centralized hub aimed at empowering journalists of all skill levels with more ways to connect with their audiences and communities.
The site—which we unveiled last week at Online News Association ‘13 (ONA), a premier digital journalism conference—features a variety of ways to do everything from research to developing to publishing. There are many tips and tricks to make technology do some of the heavy lifting in the daily lives of journalists. The site also showcases the power of the Internet overall in reaching new audiences and giving journalists more ways to make an impact.
We’ll add more resources including case studies, tutorials and expanded content in the coming months, and will soon launch the site in other languages as well.
Posted by Daniel Sieberg, Head of Media Outreach at Google
Thứ Sáu, 18 tháng 10, 2013
Friday Guns N Ammo
Triggers Resumed
After a fun time yesterday with sliders, it was back on the main highway towards completing the main modules of the IDE and engine. The last IDE element was the trigger zones which had been mostly completed in the editor side but did very little in the engine side.
You will be pleased to hear that the trigger zones are now being monitored and as soon as the player enters one of them, they are triggered. At the moment, with no scripting in the engine, they don't trigger very much, so I have simply deactivated them when you enter one. It's a job of five minutes to connect this to something practical when the time comes. I have also made sure everything resets properly so you can do it all over again during the many test games the software will go through.
Guns N Ammo
After a few editor tweaks requested by the powers that be (well, Rick) I was full steam ahead on my next mission which was to get weapons and ammo collectible within the game and have those collections properly trigger the gun to appear and arm accordingly. This allowed me to reduce the test game loading time as only weapons actually dropped into the level should be loaded.
I then spent a few fun hours adding guns and ammo entities, and of course guessing what ammo I had. This of course led to the need for a status panel so I could see what weapon I had and the ammo and clip count for my selection. It was then I had a brain wave. What if I re-used the slider panel system for my ammo readout. It was all ready and waiting for as many panels as I wanted, so why not. So I did.
Weapons Panel Is Born
Obviously I need to provide some new graphics for the status HUD, but the upshot of this code re-use is that I had my ammo readout with the name of the weapon above, but I could also TAB to the slider screen and 'MOVE' the panel as it was in edit mode. When I returned to the game view, the ammo panel was in it's new place of course.
I occurred to me quite quickly that this ability to shuffle about the ammo panel, and eventually health panel, lives panel, radar panel, local map panel and whatever else panel we add in the future is a superb way to keep your games customizable. Gone are the days of recognizing an FPSC game because it uses the same health and lives status graphic in the top left corner of the screen. Any user will be able to shift the positions of these panels within minutes of their first exploration of the tab views! How cool is that.
We would of course have to add some more panel controls so you can change the panel box skin, fonts, gadget positions, e.t.c. but building this into the panel system as an editable function means you can not only customize your status HUDs but the debug panels used to edit your game as well. I won't go as far as to say you can edit the editor, but we're heading in that general direction.
New Reloaded Website and Newsletter Launched Today
As some of you may know, we had the official launch of our new website today and we hope you will like your new home. It is crammed with the latest web technologies, and it is geared up to provide a flow of fresh information as it happens. It's all centered around Reloaded and just like the software, we will be adding to the site as new content, features and requests come in. For those who missed the launch here is the link:
www.fpscreator.com
You can also first the first ever Reloaded newsletter in there as well, which will be used to reveal juicy insights into the deepest corners of the engine each month. For the first few months however we will simply be covering the gran unveiling of all these amazingly new features of the engine, and providing an overview of where it fits into the whole.
For the moment my blog will remain 'above ground' and the concept so far is that Rick and friends will mine my blog for newsworthy items and post them on the site and newsletter. This means those users who are short on time can skim through the main site and those who want ever juicy detail can return here and read about it from the horses blog.
Early Third Party Art
"It had already worked out the existence of income tax and nice pudding before anyone managed to turn it off". That's right, even before the beta got released do we see the first radical customization of Reloaded from our sound guy, who not satisfied with desert and lush terrain went away and created himself 'Iceworld'.
The more I see how a few terrain textures can completely transform the whole scene, the more I think we will be releasing terrain packs as well as model packs down the road. I also think there is much more to do with our beloved terrain system, and I am looking forward to seeing how far we can take the system in the months and years to come.
Signing Off
It's now the weekend, which means I can have the option of resting my tired eyes for two days, but we both know that is not going to happen. If the weather is nice I might dig a few holes, but rest assured I will be returning to the warmth of this project and cracking on with the next urgent thing.
As I survey my lists the next urgent thing is hacking in the trigger zone functionality for win, sound and story (basically, exit the game, play a sound and play a video). As I don't have a script engine yet, I will hack in the code and choose the behavior based on the hard filename of the script. I have already done this to great effect with weapon.fpi and ammo.fpi. This allows the engine to be completed to a functional level without having a script system, and then the script system can be introduced in stages and tested to ensure behavior is not affected (whether it be FPI or LUA).
Once those basic functionality items are in place, I return to character AI and to see if I can make them less 'silly'. Right now they silently fire six bullets then walk backwards before reloading, all very silly. I will begin with the basics and adding obstacle avoidance, physics for the player and infinite ammo for the enemies to get some decent combat happening. Should be even more fun!!
After a fun time yesterday with sliders, it was back on the main highway towards completing the main modules of the IDE and engine. The last IDE element was the trigger zones which had been mostly completed in the editor side but did very little in the engine side.
You will be pleased to hear that the trigger zones are now being monitored and as soon as the player enters one of them, they are triggered. At the moment, with no scripting in the engine, they don't trigger very much, so I have simply deactivated them when you enter one. It's a job of five minutes to connect this to something practical when the time comes. I have also made sure everything resets properly so you can do it all over again during the many test games the software will go through.
Guns N Ammo
After a few editor tweaks requested by the powers that be (well, Rick) I was full steam ahead on my next mission which was to get weapons and ammo collectible within the game and have those collections properly trigger the gun to appear and arm accordingly. This allowed me to reduce the test game loading time as only weapons actually dropped into the level should be loaded.
I then spent a few fun hours adding guns and ammo entities, and of course guessing what ammo I had. This of course led to the need for a status panel so I could see what weapon I had and the ammo and clip count for my selection. It was then I had a brain wave. What if I re-used the slider panel system for my ammo readout. It was all ready and waiting for as many panels as I wanted, so why not. So I did.
Weapons Panel Is Born
Obviously I need to provide some new graphics for the status HUD, but the upshot of this code re-use is that I had my ammo readout with the name of the weapon above, but I could also TAB to the slider screen and 'MOVE' the panel as it was in edit mode. When I returned to the game view, the ammo panel was in it's new place of course.
I occurred to me quite quickly that this ability to shuffle about the ammo panel, and eventually health panel, lives panel, radar panel, local map panel and whatever else panel we add in the future is a superb way to keep your games customizable. Gone are the days of recognizing an FPSC game because it uses the same health and lives status graphic in the top left corner of the screen. Any user will be able to shift the positions of these panels within minutes of their first exploration of the tab views! How cool is that.
We would of course have to add some more panel controls so you can change the panel box skin, fonts, gadget positions, e.t.c. but building this into the panel system as an editable function means you can not only customize your status HUDs but the debug panels used to edit your game as well. I won't go as far as to say you can edit the editor, but we're heading in that general direction.
New Reloaded Website and Newsletter Launched Today
As some of you may know, we had the official launch of our new website today and we hope you will like your new home. It is crammed with the latest web technologies, and it is geared up to provide a flow of fresh information as it happens. It's all centered around Reloaded and just like the software, we will be adding to the site as new content, features and requests come in. For those who missed the launch here is the link:
www.fpscreator.com
You can also first the first ever Reloaded newsletter in there as well, which will be used to reveal juicy insights into the deepest corners of the engine each month. For the first few months however we will simply be covering the gran unveiling of all these amazingly new features of the engine, and providing an overview of where it fits into the whole.
For the moment my blog will remain 'above ground' and the concept so far is that Rick and friends will mine my blog for newsworthy items and post them on the site and newsletter. This means those users who are short on time can skim through the main site and those who want ever juicy detail can return here and read about it from the horses blog.
Early Third Party Art
"It had already worked out the existence of income tax and nice pudding before anyone managed to turn it off". That's right, even before the beta got released do we see the first radical customization of Reloaded from our sound guy, who not satisfied with desert and lush terrain went away and created himself 'Iceworld'.
The more I see how a few terrain textures can completely transform the whole scene, the more I think we will be releasing terrain packs as well as model packs down the road. I also think there is much more to do with our beloved terrain system, and I am looking forward to seeing how far we can take the system in the months and years to come.
Signing Off
It's now the weekend, which means I can have the option of resting my tired eyes for two days, but we both know that is not going to happen. If the weather is nice I might dig a few holes, but rest assured I will be returning to the warmth of this project and cracking on with the next urgent thing.
As I survey my lists the next urgent thing is hacking in the trigger zone functionality for win, sound and story (basically, exit the game, play a sound and play a video). As I don't have a script engine yet, I will hack in the code and choose the behavior based on the hard filename of the script. I have already done this to great effect with weapon.fpi and ammo.fpi. This allows the engine to be completed to a functional level without having a script system, and then the script system can be introduced in stages and tested to ensure behavior is not affected (whether it be FPI or LUA).
Once those basic functionality items are in place, I return to character AI and to see if I can make them less 'silly'. Right now they silently fire six bullets then walk backwards before reloading, all very silly. I will begin with the basics and adding obstacle avoidance, physics for the player and infinite ammo for the enemies to get some decent combat happening. Should be even more fun!!
Đăng ký:
Bài đăng (Atom)