Allow uploading of 3D files to Wikimedia Commons
Open, LowPublic

Tokens
"Like" token, awarded by 1Veertje."Like" token, awarded by ChristianKl."Love" token, awarded by Mrjohncummings."Mountain of Wealth" token, awarded by Pine."Like" token, awarded by Ebraminio."Love" token, awarded by Moushira."Mountain of Wealth" token, awarded by Micru."Love" token, awarded by waldyrious."Like" token, awarded by Ricordisamoa.
Assigned To
None
Authored By
bzimport, Mar 31 2005

Description

Author: david

Description:
Please allow registered users to upload .blend files to the commons. I would
like to start a repository of Blender 3D resources including .blend files for
public use and for use with certain Blender 3D wiki projects, such as
http://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro .

Perhaps create a new type, instead of just Images and Sound, add Source Files,
or maybe Sources?

  • Primary mentor: @MarkTraceur
  • Co-mentor:
  • Estimated time for a senior contributor:
  • Skills required: PHP, JS, and a service to render 3D models on screen
  • Microtasks: Any easy tasks from Multimedia or #editing

This card tracks a proposal from the 2015 Community Wishlist Survey: https://meta.wikimedia.org/wiki/2015_Community_Wishlist_Survey

This proposal received 56 support votes, and was ranked #11 out of 107 proposals.

https://meta.wikimedia.org/wiki/2015_Community_Wishlist_Survey/Commons#3D_models_on_Wikimedia_Commons

There are a very large number of changes, so older changes are hidden. Show Older Changes
BenHS added a subscriber: BenHS.Sep 8 2015, 1:11 PM
Qgil added a comment.Sep 23 2015, 9:00 AM

@MarkTraceur @JeanFred this project is still featured at Possible-Tech-Projects. Do you want to propose it for Outreachy-Round-11 for December-March?

Qgil added a comment.Sep 23 2015, 9:36 AM

This is a message sent to all Possible-Tech-Projects. The new round of Wikimedia Individual Engagement Grants is open until 29 Sep. For the first time, technical projects are within scope, thanks to the feedback received at Wikimania 2015, before, and after (T105414). If someone is interested in obtaining funds to push this task, this might be a good way.

@MarkTraceur , @JeanFred are either of you still open to being a mentor for this for Outreachy-Round-11 ?

Reaching out via IRC or private email recommended in case deadlines are getting closer.

I'm tentatively telling @TasneemLo that our priorities are in the following order:

  • Panoramic images (almost supported already)
  • 3D printing schematics
  • 3D videos

If anyone disagrees, please speak up.

@MarkTraceur: By 3D printing schematics, we mean STLs?

What is an "STL"? Links are generally welcome.

TasneemLo added a comment.EditedSep 29 2015, 6:55 AM

@Moushira, yes it would be STL as that is the most popular format that most 3D printing softwares support. Did you have something else in mind ?

EDIT:
Ah, On further searching, I now realize that the AMF file format is even more popular than STL - and AMF has more features like color, etc.
Will have to check the format out. Thanks for bringing it up

So, should we put this task − or a subset − for Possible-Tech-Projects? @MarkTraceur, you still up to mentor this?

Ping @Bawolff as a potential co-mentor?

JeanFred edited the task description. (Show Details)Oct 8 2015, 10:55 AM
Elitre added a subscriber: Elitre.Oct 23 2015, 10:31 AM

Ping @Bawolff as a potential co-mentor?

/me doesn't really want to commit to being a mentor for this round. (I would be willing to give advice to the student unofficially though if they run into anything tricky)

Tgr added a comment.Oct 29 2015, 11:19 PM

I would be willing to give advice to the student unofficially though if they run into anything tricky

Isn't that exactly what a co-mentor should do? :)

Well I do that for any random person who asks me, time permitting.

I don't really want to commit to necessarily doing code review, or general mentoring of the student.

Ebraminio added a subscriber: Ebraminio.
Yurik added a subscriber: Yurik.Dec 20 2015, 2:36 PM

github has a 3D viewer that can show visual 3D diffs - https://github.com/skalnik/peg-board-spindle/commit/7a1039fe5709ff49eec7800aa7259a5e5b536d05 - anyone knows if that tech is open source anywhere?

github has a 3D viewer that can show visual 3D diffs - https://github.com/skalnik/peg-board-spindle/commit/7a1039fe5709ff49eec7800aa7259a5e5b536d05 - anyone knows if that tech is open source anywhere?

Client side they're using THREE.js

Yurik added a comment.Dec 20 2015, 2:54 PM

@Rillke, thanks! What about the "diff" viewer? I think we would need that as part of the versionned 3D commons file store.

Rillke added a comment.EditedDec 20 2015, 3:09 PM

@Rillke, thanks! What about the "diff" viewer? I think we would need that as part of the versionned 3D commons file store.

It would be probably nice to have but we do not have such a feature for SVG files and that's probably a lot simpler and allow SVG uploads at Commons. I don't see this as something we must have. What we need though, is some server side support for thumbnails and client side we must ensure usability: Consider a category full of 3D-Modells: You don't want to launch the THREE.js WebGL renderer for all of them, killing your visitor's browsers. You probably want to show a thumbnail and a button "view in 3D".

See James' comment about the steps to take: T3790#1306431

Yurik added a comment.Dec 20 2015, 3:14 PM

@Rillke, re server-side rendering - the Graphoid service already does that - draws graphs on a headless canvas in node.js and returns a png. If there is javascript lib that can function in a headless mode, we can easily create a service for it.

@Rillke, re server-side rendering - the Graphoid service already does that - draws graphs on a headless canvas in node.js and returns a png. If there is javascript lib that can function in a headless mode, we can easily create a service for it.

Nice. What's the setup to test a Graphoid service or a local equivalent in headless mode?

Yurik added a comment.Dec 20 2015, 3:32 PM

@Rillke, you need nodejs, git clone graphoid, npm install, and point config.yaml to config.dev.yaml (or simply rename it to config.yaml), and npm start. Browse to it with https://graphoid.wikimedia.org/www.mediawiki.org/v1/png/Extension%3AGraph%2FDemo/1964437/2e25518b199b22ab9043f7ce9a0cd1370b27d77a.png -- change server. Graphoid should be able to download graph from mediawiki.org and render it.

@Yurik: Thank you for this information, I was always thinking about how to solve this on server side. But are you sure this could handle WebGL features? (At least this is part of T54655.)

For a diff feature (or at least a compare screen), we should create another task, or? At least it's rather needed for 3D objects than for 2D images.

Sketchfab.com for example uses OGS.JS. There are several very good examples on Sketchfab, take a look by searching for "photogrammetry". It seems that this library can handle up to 1~2 million polygons (older PC here) very good. Needs some comparison.

Yurik added a comment.Dec 20 2015, 5:56 PM

@Reaper35, googling brought up gl and node-webgl, so sounds like its possible.

Ebraminio added a comment.EditedDec 20 2015, 8:19 PM

I was wondering if it would be possible to use a runtime 3d model and integrating glTF, a new JSON based standard backed by maintainers of OpenGL standard, somehow? https://github.com/KhronosGroup/glTF

From the given samples it looks simple and straightforward https://github.com/KhronosGroup/glTF/blob/master/sampleModels/README.md

Also it seems it supports various strategies, https://github.com/KhronosGroup/glTF/tree/master/sampleModels/duck Other than all-in-one embed and binary models there, which are somehow similar with SVG as having embedded textures as base64 images, maybe the plain one would be nice also if a model could use free images uploaded on commons as its textures.

Update: The thing happened on LibreOffice Impress, not very recently, with glTF: http://zolnaitamas.blogspot.com/2014/08/3d-models-in-impress-libreoffice-43.html

Tgr added a comment.Dec 20 2015, 9:04 PM

@Yurik visual diffing should probably be a ticket of its own but see GitHub's blog post about their 3D differ. (They have some cool stuff for map and image diffs too.)

Ainali removed a subscriber: Ainali.Jan 2 2016, 6:26 PM
Niharika removed a subscriber: Niharika.Jan 21 2016, 4:36 AM
IMPORTANT: If you are a community developer interested in working on this task: The Wikimedia Hackathon 2016 (Jerusalem, March 31 - April 3) focuses on Community-Wishlist-Survey projects. There is some budget for sponsoring volunteer developers. THE DEADLINE TO REQUEST TRAVEL SPONSORSHIP IS TODAY, JANUARY 21. Exceptions can be made for developers focusing on Community Wishlist projects until the end of Sunday 24, but not beyond. If you or someone you know is interested, please REGISTER NOW.

I won't be able to come at this event, but if people are interested to work on this task, I would be happy to work with them remotely.

DannyH edited the task description. (Show Details)Feb 5 2016, 11:44 PM
Pine awarded a token.Mar 1 2016, 7:45 AM
Pine added a subscriber: Pine.
Sumit added a subscriber: Sumit.Mar 1 2016, 5:37 PM
IMPORTANT: This is a message posted to all tasks under "Need Discussion" at Possible-Tech-Projects. Wikimedia has been accepted as a mentor organization for GSoC '16. If you want to propose this task as a featured project idea, we need a clear plan with community support, and two mentors willing to support it.
Sumit added a comment.Mar 8 2016, 3:40 PM

This is a community wishlist task with a rank of 11 in 107 proposals, and could be a featured project for GSoC/Outreachy. @MarkTraceur you're listed as one of its mentors. Are you willing to push this for the current round. Also anyone else willing to co-mentor?

brion added a comment.Mar 8 2016, 5:23 PM

Also anyone else willing to co-mentor?

@Sumit I am happy to provide technical advice and review, but will have limited time to mentor. Need to timebox it clearly.

I wish I could help but I don't think I currently have enough knowledge in Wikimedia technical internals to help as a mentor. Nevertheless I will follow the ticket and help as I can.

Yurik added a comment.Mar 11 2016, 5:43 PM

I can mentor the content handler portion, but not the front end or the actuall 3D stuff

Qgil removed a subscriber: Qgil.Mar 15 2016, 2:42 PM
Gilles added a subscriber: Gilles.Mar 29 2016, 10:45 AM

I plan on working on this task during the Jerusalem hackathon. I'll probably focus my efforts on a single file format (not sure which one yet). I'm hoping to get thumbnailing and client-side viewing working. Hopefully piggybacking as much as possible on existing tech like Media Viewer.

Gilles claimed this task.

@Gilles, find me at the hackathon - the JsonConfig extension might be a good starting point for this - it is deployed to all wikis, and was specifically designed for this kinds of data storage.

@Gilles I wrote part of a funding application to support 3D files with Wikimedia UK a few years ago to support files on Wikimedia. We looked at a lot of 3D formats and our conclusion was to support .amf , it supports a lot more features than .stl and is an open format (unlike .stl) and you can easily convert from .stl to .amf.

https://en.wikipedia.org/wiki/Additive_Manufacturing_File_Format

Pyro853 added a subscriber: Pyro853.Sun, Apr 3, 9:12 AM
Ijon added a subscriber: Ijon.Sun, Apr 3, 1:38 PM

I'll probably focus my efforts on a single file format

STL, for those interested. :)

Gilles added a comment.Sun, Apr 3, 1:55 PM

And my thing also supports AMF, as suggested by @Mrjohncummings

Gilles added a comment.Sun, Apr 3, 1:58 PM

Backend thumbnail renderer: https://github.com/gi11es/3d2png
Extension: https://github.com/gi11es/3d

And the client-side integration in Media Viewer hasn't been committed yet, (I have to polish it quite a bit before submitting it for review. I hope to have that client-side code live in the 3d extension, but I need to make Media Viewer a little "pluggable" first.

@Gilles if you need any non programming help from someone familiar with reusing .stl and .amf formats for 3d printing let me know :)

Qgil added a comment.Mon, Apr 18, 9:27 AM

Backend thumbnail renderer: https://github.com/gi11es/3d2png
Extension: https://github.com/gi11es/3d

These links give 404 but now the reference URL seems to be https://www.mediawiki.org/wiki/Extension:3d, right?

I have tried to summarize the progress on this task at https://meta.wikimedia.org/wiki/Wikimedia_Blog/Drafts/WIP_Wikimedia_Hackathon_2016_post#The_connection_with_the_Community_Wishlist. Is there any beautiful screenshot in Commons that we can reuse?

Restricted Application added a subscriber: Pokefan95. · View Herald TranscriptMon, Apr 18, 9:27 AM
Quoth added a subscriber: Quoth.Mon, Apr 18, 10:12 AM
Restricted Application added a subscriber: TerraCodes. · View Herald TranscriptTue, Apr 19, 10:08 PM

Add Comment