Asset Tracking

nice, let me know how your sqlAlchemy experience is as you get more involved with the project.

I wonder what the possibilities would be with a django app and shotgun? Shotgun for task management, scheduling, bugs, and django for everything else?

sqlAlchemy is awesome so far, couldn’t do the website without it (literally)

I haven’t messed too much with Shotgun, I’m in their beta, but it didn’t seem open enough for me, and not too game oriented. I emailed them with feedback but their reply was “well, you pretty much just have to use it for everything”.

My issue is that we have a lot of middleware, Sharepoint, TFS, Devtrack, etc etc, and it would be really hard to get the project switched mid production so I need something that would talk to each of those and provide a cohesive interface to all.

If you’re already using Shotgun I’m sure you could pull it off, I would be really surprised if you don’t have access to the shotgun db.

Hello everyone.

I’m trying to implement an asset thumbnail browser that is based on perforce by using C# and python. Because I often suffer from searching a corresponding asset from a TONS of assets. It’s definitely waste of time. So I decided to implement the asset management tool.

Actually I’ve already implemented the following functions by python.

[ul]
[li] the function to parse all assets under the specified folder on perforce to generate a database file (sqlite3)[/li][li] the batching process to render thumbnail of the all specified assets ( maya scene, texture and so on)[/li][/ul]
So I’m going to implement the asset “thumbnail” browser by using C# and the above python scripts. Specifically I would like to implement the tool as the following screen shots, like a simple version of UE3’s Content Browser

As long as I surf on the net, DataGridView seems to be the adequate method for C# to achieve my goals like the following webpage.

But I’m not familiar with the combination between C# and python. So if you have any good information to implement the kind of thumbnail viewer by using C#, please give me advices.

Thanks in advance.

I’m not clear why you would need/want to use C# at all here. You already have a good chunk of the work done in Python, why not make the UI in Python as well?

wxPython (www.wxpython.org) even has a control/widget called ThumbnailCtrl you could get a lot of mileage from.

Hi Adam. Thank you for your advice.

Yeah… I actually tried to use PyQt to implement the asset browser. But I’m concerned that if I use PyQt, I might have to pay the license fee. Therefore I changed my mind and looked for the alternative method to achieve my goal.

In addition, my colleague said to me that “You should definitely learn C#. Because C# might be the standard language for next generation!”. That’s why I investigated the method to build an asset tool by using C#.

But I realized that wxPython also could be the candidate. After you pointed out, I remembered that you introduced wxPython in your great presentation of GDC2008. So I’m also going to research wxPython!

As you mentioned, I already implemented several functions by python. So… is it an unnatural way to combine C# and python?

Thanks,

I’m not sure there’s any truly natural ways to integrate C# and Python. I’m sure it can be done, perhaps via COM or by writing Python extensions in C#. Honestly I’ve never tried, I haven’t done much in C# since learning Python.

If marrying the two iimportant for your task, you might also take a look at IronPython, which is a different Python implementation built on the .NET framework. I expect it has more options for integrating with C# than regular cPython.

Although really I think Python is a one-stop-shop for the task you described. Definitely check out wxPython and see what you think.

I say this as someone who isn’t particularly fond of python, your colleague sounds like a moron. They have everything common that would make them ‘next generation languages’, even though they’ve been around for a decade and more. There are reasons to choose C# over python (namely, potential performance and static typing) and many reasons to choose python over C# (potential speed of iteration and dynamic typing). (I say potential in both because it depends on the quality of programmer…).

If you already have a lot of work done in python, use it! Learning C# is not going to change much for this project. There will be times to use it (especially advanced UI or graphics stuff), but probably not right now.

But to answer your question:
There is Python.NET, which allows you to call clr objects from python. It is basically just a module for python that allows you to ‘import’ .NET assemblies. It is difficult to use many sophisticated .NET UI things through this, though, due to some threading and COM issues.

There is also IronPython, which basically allows you to use the python language to work natively in .NET (so you can call .NET objects and even create .NET objects, especially with Framework 4.0’s dynamic type). As cool as this is, I wouldn’t go this route right now, leveraging it well would really require a thorough understanding of .NET first (ie, I wouldn’t suggest it to be your first .NET language).

I’m pretty sure there is an open source initiative starting up for PyQt and We use PyQt in house without paying any license fees.

I’m a bit surprised “everybody” is doing webfrontends, it it because of portability? I’m learning c# and WPF and feel like dedicated apps have more power in interacting with the desktop, drag and drop for example. I also tried a bit of python but was a bit intimidated by how much work you need to put into it if you don’t want to use tkInter for UI. Finding C#.net a lot easier for frontend stuff.

Just wondering,
-Johan

PySide should take care of Qt licensing issues and it was just released for Windows. Buggy as hell, but getting squashed very quickly…

PySide

Hello everyone. Thank you for your information.

As I’m a greedy guy, I was going to implement the asset browser with learning C#.
But I’m a beginner of C# and I have to implement the development environment as soon as possible.

Honestly I can’t still decide which language I should adopt perfectlly. But I think that the current best way is the combination python and wxPython for this case…
So I will implement the asset browser by using wxPython at first. After the implementation, if I have a remaining power, I’m going to challenge the method by using C# and WPF!

Thanks again!

Delete this.

Great thread, guys! I’ve been thinking about this topic a lot lately. Management of high-volume assets is a necessity these days. I’ve been wanting to leverage data to manage and create textures, materials, rigs for various characters in our project.
@dragonboy765, I know it’s been a long time, but how did the asset browser turn out? I’d like to know if you went with python or eventually c#? Did the program find data on the assets (thumbnails, names, polycount) from XML or databases?

Has anyone gotten a chance to try Depends?

http://www.dependsworkflow.net/index.html

The idea seems very similar to Katana. You have dependency nodes for every steps of your workflow and when the ones earlier in the graph gets updated, it pipes through all the way to the end updating every thing along the way.

Great…now my monitor is covered in bits of sandwich :stuck_out_tongue:

Is that good or bad? o_O

PaK laughed because here In the U.S. “Depends” is a brand name for an adult diaper.

Personally I like jira. If you combine svn with jira tags you can automatically see in jira the svn check in of every asset associated with that jira check in. Also you can have jira make an asset library for you as long as you share the folder structure to it. Jira will make web pages based on the images held there. We would have it update once a day (or more if I was doing lots of batch work. Just send an update request when a huge batch script ran) and everyone could see all the assets in a hierarchy structure with pictures of the assets (will take a bit of conjiguring including having auto images taken when assets get imported and right before they get checked in ect.) Super helpfull though that you can do EVERYTHING all in one place. Whats that you say… when is this asset due? Whats it look like… Oh it’s on jira… DUH. Ohhh look at that and it was checked in yesterday. Here’s the svn commit. Oh it broke the system. Who’s commit? Oh and it’s been tagged by QA oh what’s the bug number on that. Ok! Oh and the tech artist commented with the Jira Wiki on the proper procedure that wasn’t followed (because that never happens). NICE!!!