Projects

  • UVideos Xbox Application

    I moved to Canada last summer by the end of July to join Digiflare. As soon as I arrived I was assigned to work as a Lead Developer on my first Xbox project. The project had to be ready for Black Friday (Nov 23rd) so it had to be launched on November the 20th because new Xbox application roll out on Tuesdays.

    It was a tough project but we we’re able to deliver successfully on time.

     

    You can find more information on the project in this page: http://www.xbox.com/en-US/live/partners/univision

    It has been very interesting to learn the insides of a Lakeview application and I’ll keep at it in the near future.

  • Interactive Portfolio Update

    I just posted an updated version of my Interactive Portfolio using Kinect. It was updated to work correctly with the latest Kinect SDK 1.0. The application is now installed via ClickOnce which checks if you have the software requirements installed to run the app. It took a bit to figure out while ClickOnce wasn’t including some required files in the installer but it appears that there is a problem when mixing XNA and WPF projects.

    You can grab the project here.

  • Kinect and WP7 interaction

    By the same time I did my portfolio I also did another experiment that’s in this post. A few days ago I saw the KinectoPhone project and thought it would be cool to adapt it to another project I was developing with Francisco Campelo. This project allows a desktop application using Kinect to communicate with another application on the Windows Phone 7 synching its state between the two apps by communicating through a server.

    I changed a bit the network code and plugged in with other code I had done for the particles and here’s the result:

    Kinect and WP7 interaction

    The red particles on the big screen are from Kinect’s skeleton and the blue particles are sent from the WP7 through touch screen input. On the WP7 screen, the blue particles are from Kinect’s skeleton and the red/white ones from the user’s input.

    This could get many improvements, network and feature wise but I’ll leave that to some other time. I have many ideas but the time is short so I’ll be moving to another one soon.

    THANKS TO

    • My parents for helping me out testing and recording the video.
    • Anabela Faria for the video editing.
    • Francisco Campelo for the original idea which led me to the Kinect version.
  • Interactive portfolio using Kinect

    I like to explore different technologies that relate with computers and that’s why I own a Lego Mindstorms NXT . More recently I bought a Kinect to transform some ideas into real applications.

    I’m currently looking for job in software development in the Toronto (Canada) area and it occurred to me that I could present my portfolio in a fun and entertaining way. So I decided to create my first Kinect application to be this interactive portfolio. Although I have some years of experience in business applications, portals, intranets, etc., I decided to compile only my experience in game development and interactive 3d projects.

    If you don’t own a Kinect you can watch the video below to see how it works. I encourage you to skip the video in case you want to try the application or you’ll ruin the experience.

    Interactive portfolio

    The code uses the following technologies: C#, .NET, XNA and WPF. I also used two open source libraries to help with the gestures and the XNA integration with WPF.

    DOWNLOAD

    Software requirements:

    Kinect application:

    Note: Please make sure you install the software requirements or you won’t be able to install the application.

    THANKS TO

    • My parents for helping me out recording the video.
    • Anabela Faria for the video editing.
    • Paulo Silva for the animated silhoutte.
  • 3D Cascais (2010)

    In 3D Cascais you can visit and explore the natural park of Sintra-Cascais. All the work in this project was made based on real world data. ZPX’s team members (me included) made several visits to the park and took some photographs to be used as reference. Detailed height maps and information about fauna and flora (including actual sounds recorded in the park) were provided by our partners SiQuant and Cascais Natura.

    cn_01cn_02

    This project took about 6 months, two programmers and two artists but one of them not fulltime. It was built using the Unity3D engine.

    cn_03cn_04

    Go on and visit the park:

    http://percursos.webcomfort.org/PedraAmarela@26.aspx – Pedra Amarela – partial demo (faster download)
    http://percursos.webcomfort.org/Pisao@27.aspx – Pisão – partial demo (faster download)
    http://percursos.webcomfort.org/Global@30.aspx – full project online (slower download)

    http://percursos.webcomfort.org/Viewer3D/cascais3d_1_1_8.zip – full project with better quality to download and test it on your pc.

    Since the terrain is all generated on real data and is very highly detailed the builds became a bit big so bare in mind that the downloads can take a bit.

    cn_05cn_08

    cn_07cn_06

    Synopsis:

    Visit Sintra-Cascais park
    Sintra-Cascais natural park is now just a click away, offering an unprecedented interactive experience.

    3D Cascais trailer
  • Ocean (2009)

    This was my first 3D interactive project at ZPX and was developed for the EMEPC (Task Group for the Extension of the Portuguese Continental Shelf) aiming to captivate the interest of the general public to this project.

    srv-epc_01srv-epc_02

    All that you see is mapped using real data that took several months to gather. Visit the deep Atlantic ocean or follow the automatic trails to take a tour. It took about 6 weeks of development with two programmers using the Unity3D engine. All the graphic content was delivered to us by our partner. Unfortunately there wasn’t time to add more interesting stuff to the deep ocean, such as some fishes or plants.

    srv-epc_03srv-epc_04

    srv-epc_05

    Synopsis:

    See the Ocean as never before
    An amazing journey to the bottom of the Ocean, illustrating the Extension of Portugal’s Continental Platform project. This project was the result of a partnership between ZPX and Caixa d’Imagens.

    You can try it here! Click on “Modelo Virtual 3D” – gamepad icon and wait for it to load, it may take a while due to the dimension of the terrain. You may have to install Unity3D web player.


  • Realtime Bus

    I’ve used TTC (Toronto Transit Commission) to get to work and move around in Toronto. They implemented a good service where each bus is equipped with a GPS device transmitting its location and through today’s technologies that information reaches the internet and the phone of each one of us accurately and in real-time.

    The apps available for WP7 didn’t have all the features that I wanted so I decided to build my own app.

    Some features I wanted in my app that didn’t find in others:

    • Fast access to favourites
    • Map with routes
    • Information for multiple cities
    • Alerts (TTC only)

    RealtimeBus_3 RealtimeBus_1 RealtimeBus_4

    You can find the application here: http://www.windowsphone.com/en-us/store/app/realtime-bus/69bd4a05-65b4-4633-b40d-7d18d9f46edc

  • Geo Reminders for WP7

    I wanted to build this app since I bought my WP7 but unfortunately it wasn’t possible to have background tasks running on the phone. It was great to know that Mango would bring this functionality to the Windows Phone and I started working on the app right away.

    Since I program these WP7 apps outside work it takes a while to get them done. Geo Reminders allows us to program alarms or reminders depending on our location. This is useful to set a reminder for the next time you visit a place for example. Or imagine that you left a book at work and you want to bring it home, you set the reminder that will only go off when you arrive at work so that way you can grab the book and put it near your stuff when you leave.

    Here are some screen shots:

    georeminders_1georeminders_2georeminders_3

    georeminders_4georeminders_5georeminders_6

    georeminders_7georeminders_8

    The application is available since early March in the marketplace. You can download it here.

  • Places I’ve Seen for WP7

    This summer I decided to build something for WP7 in Silverlight to learn something new. Places I’ve Seen was the result of my learning experience. It was fun to use Silverlight, it’s very easy and the Visual Studio Editor for Silverlight/WPF is amazing (didn’t try Express Blend yet) and the data binding of controls saves a lot of boring work.

    Based on Where I’ve Been, Places I’ve Seen allow you to save a list of your visited locations around the globe, as well as a list of locations to visit (like a wish list). There are three ways to add items to your lists:

    • by typing the name and choosing from a list;
    • by picking a image from your library (only works if you have geo tagging on);
    • or by adding the current location using GPS (this only adds to the list of visited places).

    In addition I thought it would be cool to view images from each place so I added that functionality that searches images on Flickr from a place of your choosing.

    Here are a few screen shots of what it looks like on the phone:

    pis_1pis_2pis_3

    pis_4pis_5pis_6

    pis_7

     

    It’s available on zune here.


  • CLIArgsMadeEasy2

    CLIArgsMadeEasy is back with a long overdue update. This is the third major release of this extension although the second one didn’t receive a major version number.

    This is still an alpha version. Please report back any bugs you may find.

    New features

    • Dropped toolbar support in favour of toolbox which makes it more easy to manage and edit your command line. Open it inside View -> Other Windows -> CliArgsMadeEasy
    • Remove or change between command line arguments with a click of a button.
    • No more clogging the windows registry, data gets saved in .suo file.
    • Detect startup project inside solution folders.
    • Compatible with VS2012, VS2013 and VS2015RC.

    Changelog

    • v1.0.7:
      • Added support for Visual Studio 2015.
    • v1.0.6:
      • Added support for Visual Studio theme layouts.
      • Fixed bug where pressing the delete key while editing an item would delete the item and not the next character.
    • v1.0.5:
      • Added ability to duplicate and edit (buttons were added for each CLI arguments.)
      • Changed the way CLI args get added and changed.
    • v1.0.4:
      • Fixed VSIX problem for VS2012 installation.
      • Fixed bug where deleting command line arguments wouldn’t set them in Visual Studio.
      • Fixed bug where we could add the “Type some arguments”.
      • Changed default shortcuts:
        • ctrl+alt+0 – open CLIArgsMadeEasy window.
        • ctrl+alt+9 – focus on command line arguments.
        • ctrl+alt+8 – focus on project filter.
        • ctrl+alt+7 – focus on command line history.
    • v1.0.3:
      • Fixed VSIX installation for VS2013. Common installer for both VS2012 and VS2013.
      • Fixed bug where changing CLI Args through project properties didn’t update the extension.
      • Added empty CLI args when pressing enter with no arguments in the box.
    • v1.0.2:
      • Added key shortcuts:
        • ctrl+alt+0 – focus on command line arguments.
        • ctrl+alt+9 – focus on project filter.
        • ctrl+alt+8 – focus on command line history.
        • tab – focus next command line.
        • enter or space – select current command line.
        • delete – removes current command line.
        • escape – set focus on command line arguments.
      • Fixed bug detecting when startup project was deleted.
    • v1.0.1:
      • Removed erroneous menu entry from Visual Studio under Tools – You can find the tool window in: View -> Other Windows -> CliArgsMadeEasy
      • Command line arguments text box expands to show full text.
      • Added new icon.

    Description

    Command Line Arguments Made Easy (CLIArgsMadeEasy) is a Visual Studio extension that eases the access and change of the startup project’s command line arguments. Instead of having to go to project properties or instead of using the command window to run your program with different arguments, CLIArgsMadeEasy adds a toolbox for you to add and edit your custom arguments.

    If you like this add-in and want to support it, donate by clicking in the button:

    Download

    Download CLIArgsMadeEasy2 v1.0.6 alpha here. (for Visual Studio 2012 / 2013)
    Download CLIArgsMadeEasy2 v1.0.7 beta here. (for Visual Studio 2012 / 2013 / 2015)

    Many thanks to Diogo Teixeira (aka fozi) for the add-in idea and testing of the program. And I also have to thank Matt Phillips for showing interest in the add-in which inspired me to make a second release.
    Thanks to everyone who’s been reporting bugs and helping me building a stable version of CLIArgsMadeEasy.

  • Windows 8, Visual Studio 11 and CLI Args Made Easy 11

    I decided to try the new Windows 8 consumer preview and Visual Studio 11 Beta to see how the new systems behave and to check the new features. Windows 8 may surprise some (as it did to me) at the beginning but I personally like most of the changes. VS 11 also as a new look and lots of new features but I’ve only started to scratch the surface of it. The first thing that I tried on VS11 was to see if CLIArgsMadeEasy2010 worked and it didn’t so I decided that this would be my first project in VS11.

    It was actually easier than I thought it would be as it just needed to be recompiled in VS11. So here it is the new version of CLIArgs, CLI Args Made Easy 11. It has all the same features of CLIArgsMadeEasy2010 v1.2 but I’ll keep it beta for now while the VS11 is in beta. Grab the new version here.

  • CLIArgsMadeEasy2010 Update

    I just updated my CLIArgsMadeEasy2010 Visual Studio add-in. It fixes a bug that prevented it from working correctly on solutions that included projects inside project folders.

    I’ve also decided to update it with a small feature that saves a lot of time. If you’re like me and have a few add-ins installed, you might have a context menu like mine that fits the whole screen at 1080 and it becomes painful to find the “set as starting project” option. So CLIArgsMadeEasy2010 v1.2 now includes a neat combo box with the current startup project and all the other projects which allow you pick another project as the startup project very easily by choosing it from this combo box.

    If you don’t use any of the features you can hide them by clicking in the arrow beside the add-in toolbar box.

    Grab the add-in here.

  • CLI Args Made Easy 2010 / 2012

    Find the new CLIArgsMadeEasy version here.

     

    Summary

    Improved version of the CLI Args Made Easy for Visual Studio 2005 and 2008.
    Visual Studio Add-in that puts the project’s command line arguments more accessible.

    Description:

    Command Line Arguments Made Easy (CLIArgsMadeEasy) is a Visual Studio Add-in that eases the access and change of the startup project’s command line arguments. Instead of having to go to project properties or instead of using the command window to run your program with different arguments, CLIArgsMadeEasy adds a field in the toolbar for you to edit and saves everything you enter. A button is also added that opens a console window in the project’s working directory or home directory (if there’s no working directory set for this project).

    Features:

    • More stable and faster than it’s predecessor CLIArgsMadeEasy.
    • Rapidly change startup project’s command line arguments in toolbar.
    • Saves command arguments history per user per machine.
    • Open console window in working directory or project’s directory (if there’s no working directory set).
    • Easily set a new startup project in the toolbar.

    Screen shot:

    cliargs

    Changelog:

    • v1.3 – fixed bug that prevented resizing the CLIArgs input box.
    • v1.2 – added new combo box to easily choose a new startup project.
    • v1.1 – fixed bug parsing solutions with projects inside project folders.

    Note: to resize the add-in input boxes you can click on the toolbar options button on the right and choose: “Add or Remove Buttons”->“Customize”. Then select the input box you want to change and choose “Modify Selection” and set the width as you like.

    Known limitations:

    • Doesn’t work with XBox 360 projects.

    I’d really appreciate if someone could give me a hand to solve this problem since I don’t have access to the XBox 360 SDK.

    If you notice any slow downs or other problems because of CLIArgsMadeEasy 2010, let me know.

    If you like this add-in and want to support it, donate by clicking in the button:

    Download

    You can download CLIArgsMadeEasy2010 v1.3 here. (for Visual Studio 2010)

    ATTENTION: There is a known bug in CLIArgsMadeEasy2012. If you want the add-in to work properly, please make sure that it is visible in the Visual Studio’s toolbar BEFORE you open a solution, otherwise the add-in won’t behave like it should. This bug doesn’t impact your IDE experience. I’m currently working on a fix but it will take me some time to get it 100%. In the meanwhile you can use the version below.
    You can download CLIArgsMadeEasy2012 v1.0 RC2 here. (for Visual Studio 2012)

    Many thanks to Diogo Teixeira (aka fozi) for the add-in idea and testing of the program. And I also have to thank Matt Phillips for showing interest in the add-in which inspired me to make this second release.
    Thanks to everyone who’s been reporting bugs and helping me building a stable version of CLIArgsMadeEasy.

  • CLI Args Made Easy

    Find the new CLIArgsMadeEasy version here.

    Summary

    Visual Studio Add-in that puts the project’s command line arguments more accessible.

    Description:

    Command Line Arguments Made Easy (CLIArgsMadeEasy) is a Visual Studio Add-in that eases the access and change of the startup project’s command line arguments. Instead of having to go to project properties or instead of using the command window to run your program with different arguments, CLIArgsMadeEasy adds a field in the toolbar for you to edit and saves everything you enter. A button is also added that opens a console window in the project’s working directory or home directory (if there’s no working directory set for this project).

    Features:

    • Rapidly change startup project’s command line arguments in toolbar.
    • Current session command arguments history.
    • Open console window in working directory or project’s directory (if there’s no working directory set).

    Screenshot:

    cliargscliargs_options

    Future:

    • Support keyboard shortcuts.
    • Save command line arguments history per startup project and between VS sessions.
    • Support for multiple startup projects.

    Known limitations:

    • The commands that you insert in the combo box will not do anything if you remove the focus from the combo with a mouse click on any other place. For some reason that I do not understand, when you use the mouse to change the focus, the value that is sent to the event handler is the old value that was in the box, not the new one that the user inserted. So, if you want to change the focus using a mouse click, make sure that you press the enter key in the combo box first.
    • Visual Studio’s extensibility API doesn’t provide an easy way to get a reference to a startup project, so we have to parse the solution which takes some time.
    • Since Visual Studio’s extensibility API doesn’t provide a way to catch any “startup project has change” event, there’s a timer that from time to time checks if there was any change.

    I’d really appreciate if someone could give me some tips on how to solve any of these problems.

    If you notice any slow downs because of CLIArgsMadeEasy, let me know.

    If you like this add-in and want to support it, donate by clicking in the button:

    CLIArgsMadeEasy is a free add-in, use it at your own risk. The authors can not be held responsible if anything wrong happens when using this add-in.

    Download

    You can download CLIArgsMadeEasy 1.0 Beta here.

    Many thanks to Diogo Teixeira (aka fozi) for the add-in idea and testing of the program.

  • VS File Finder 2008

    Summary

    Visual Studio Add-in that eases the access to files in large projects.

    Description

    Visual Studio File Finder 2008 (VSFF2008) is an add-in based on VSFileFinder 2005 developed by Jonathan Payne.

    This add-in allow you to find files easily in large projects. The files are listed in a new window where you can type a few letters to narrow the list and open the file(s) you’re interested.

    It decreases considerably the file access time comparing to Solution Explorer where you may have to scroll and possibly open some “folders” to find the files.

    There are some options to configure this add-in: exclude or highlight different files, tooltips’ configuration, project filter and regular expressions.

    Many of these improvement ideas came from Diogo. Some of these were already integrated with the official 1.3 version. This is an updated version with support for Visual Studio 2008.

    Changes from original version

    • Added wildcards and regular expression support to search. (Wildcards are on by default.)
    • Added a project filter.
    • It is possible to turn on/off, add a timeout or show tooltips with the complete name of the file.
    • Fixed possible bug in tooltips that don’t go away.

    Screen shot

    vsffvsff_options

    VSFileFinder 2008 is a free add-in, use it at your own risk. The authors can not be held responsible if anything wrong happens when using this add-in.

    Download

    You can download VSFileFinder2008 1.4 Unofficial here.

    To download the original version click here.

    Again, this add-in was not made by me. I just added some features to the original.

    I want to thank Jonathan Payne for the creation of this great add-in and Diogo Teixeira for the suggestions and testing he made.

  • Leave a Reply

    Your email address will not be published. Required fields are marked *