TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Indoor positioning, Unity 3D and Twisted. How's that for a tech-stack?

15 点作者 autolico大约 12 年前

7 条评论

JabavuAdams大约 12 年前
I did something similar to what you describe by writing a custom Python server to communicate with a Unity client.<p>Most highly interactive games can't just use TCP, because it has too much overhead and you want different reliability for different kinds of game-data. For instance, if you're sending a constant stream of position updates, you don't need them all to be reliable. E.g. just send the last N frames of updates in each unreliable datagram. That way if one is missed, you can just interpolate / extrapolate. Triggering particle effects or other non-critical eye-candy can also be unreliable.<p>Check out RakNet. It's a really solid C++ networking library optimized for games and similar soft-realtime use cases. Internally, this is what Unity's built-in networking is implemented with. Since I couldn't access Unity's RakNet directly, I wrapped the DLL for access from my own client-side Unity code. I used custom Python on the back-end.<p>Another option to consider is SmartFox Server. It does things like lobbies, IP block ranges, and sessions management.<p>Chances are you'll end up re-implementing a lot of functionality that they've written already. I was okay with that, because I wanted to learn how.<p>Hope this helps.<p>You should decouple your network polling from the game update loop to avoid headaches later. I.e. don't do it in Update. Also, Update is frame-rate / display-dependent, whereas FixedUpdate is not.
darklajid大约 12 年前
The title sounded very interesting, I'm highly interested in Unity and Indoor positioning. But .. that's not part of that article. This is just a tiny C# class for network operations in Unity, it seems?<p>Disclaimer: C#'s what I earn my money with. That article confuses the hell out of me.<p>Why would you ever yield return a single value?<p>Why is the class name in lowercase/camelCase for 'networkSocket'?<p>Why are the method names following the (.Net standard) PascalCase convention in 'networkSocket', but using the (Java et al) camelCase in the samples below?<p>In my opinion this doesn't show a thing about the stack from the title and the C# is (arguably of course) a little messy. Even ignoring the inconsistent style (catching "Exception" comes to mind, public fields instead of properties, etc).
评论 #5485973 未加载
评论 #5487932 未加载
kayoone大约 12 年前
Awesome, i have quite a bit of unity3d experience for game development and now as a freelancer would love to work on some non-gaming related Unity3d Applications.<p>We currently are in discussions for a project that will visualize a sailing race in 3D with live GPS locations of the actual boats. Viewers could actually see the visualized race in the browser (flash) or on their mobile device of choice!<p>As a performance hint: I dont think you need to read the Socket every frame (so 60 times per second at 60fps), doing it 5-10 times per second should be more than enough as there will be some latency involved anyway.
评论 #5485528 未加载
polychrome大约 12 年前
Could you expand upon the reason why you chose to use 3D over 2D floor plans? From a technological standpoint it's very cool, but I was wondering what value it adds for the business and customer satisfaction?<p>If I understand your product correctly, 3D may bog down your customer service channels because people will pay more attention to the accuracy of your model (when it may not matter) instead of the metrics you are trying to convey.<p>There are also some logistic issues that I'm wondering how you will overcome:<p>-If I'm a local technician, this will be a great tool to spot check the receiver locations. But I have no way to (accurately and easily) measure if it's 4 feet or 6 feet off the ground.<p>-If I'm a school admin, I need a quick graphic where the only change is the metrics I'm trying to analyze. Making me zoom/move around to see different classrooms / buildings on campus is time I probably don't have. Even pre-made locked 3D views distract me with extra information about the building when I'm really trying assess classroom attendance. And while showing the flow of students from classroom to classroom in 3D would be cool, it would again be much more useful as an analytical tool in 2D where the information being displayed is limited and focused on the task at hand.<p>3D is typically used to engage someone emotionally or show a highly detailed item. Emotionally, it allows us to connect to an event (such as the SailBoat Race) by filling our eyes with information that can only be gleaned at that time/space in reality. Analytically, it is a great tool to convey and compare important minute details, such as light coming into a room or organs wrapping around each other.<p>It's a great tool when used appropriately and I do see some value added by making an admin see/feel the cramped musky hallways of a building to explain emotionally why students go to class less often in certain buildings. But I equally wonder if you won't find yourself in uphill battle as people focus more on the problems with your model instead of the problems with their attendance?<p>On top of all that, what happens if:<p>-I have a Netbook/Chromebook with too little horsepower for 3D?<p>-I have to install flash just to use your product and can't (Mac)?<p>-My internet connection is slow, intermittent or a combo?
评论 #5488153 未加载
daniel-levin大约 12 年前
I am looking forward to reading the next few articles in the series. Mapping applications are awfully hard to get right [1]. There is just so much to do and do correctly that it is quite the technical achievement to create a functional mapping application. Doing it in 3d seems more difficult.<p>But, I have a huge philosophical disagreement with the (education) product that beestar offer. I am a university student, and the freedom and independence that comes with being a student is invaluable. I transitioned from the narrowly rule-bound high school to the liberated, independent university life. I feel it is <i>my</i> responsibility and mine alone for my attendance. I would feel like I was back at school if my attendance was monitored. So many universities are places that engender freedom of thought, movement and expression. It seems as if this "were <i>you</i> there?" Big Brother system stands in opposition to the liberty offered by universities. The system that can offer you freedom unlike in any other institution instead clamps down on you, Theory X style [2]. If I were to attend a university using this system, I would feel <i>less free</i> than I do now. I don't think that removing someone's freedom to guarantee attendance is a worthwhile payoff for the education they'd be receiving<p>[1] www.theatlantic.com/technology/archive/2012/09/how-google-builds-its-maps-and-what-it-means-for-the-future-of-everything/261913/<p>[2] <a href="http://en.wikipedia.org/wiki/Theory_X_and_Theory_Y" rel="nofollow">http://en.wikipedia.org/wiki/Theory_X_and_Theory_Y</a>
评论 #5488273 未加载
middayc大约 12 年前
so using 3d/scenegraph/scripting engine for 3d and twisted (python networking engine) for networking. What's so special about that? Unity doesn't work on linux btw.
评论 #5488322 未加载
评论 #5486070 未加载
polychrome大约 12 年前
What are your plans for new Macs that don't have flash?
评论 #5485727 未加载