I was wondering if it would be possible to import a blender gameobject into a blender game running with the web plugin, from a folder on the user’s computer. I’d want to do this to allow other web users to import thier own characters into a 3d blender website, based on a universal template. And I was also wondering if you could link to a webpage from within an online blender program. I’m planning on creating a 3d homepage community. With this setup, Blender could completely replace all other online 3d communities, and become an even more widespread tool. I’d plan on creating characters and house templates for non-artists, A set of site requirements for being listed as part of the community(these guides would make the transitions between individual site as un-noticable as possible, and standardise charcater size and interface), and provide links to every blender resource. I remember when I looked at the other 3d communities, they required the purchasing of special editing software to make your site looked how you wanted, and even those tools felt limiting to me. This would be the coolest thing, If I could pull it off. It would be a true online 3d universe. In my mind, this would be totally non-profit, but I’ve thought that advertising would be a good Idea too compensate for my maintenance. And a large percentage of that advertising would go to the blenderfund. So If your a blender plugin expert, or just would like to comment. I’d like to hear some suggestions on the plausibility of this project, If you have the time. thanks -chris
Do you mean a site where people meet each other or look at information in 3-D?
you know, get a job and a house and stuff?
That should be cool, a website like a 3D village where you can visit houses to view some info in that house, and upload your game character to that village and use it. Should be cool, enable ofcourse a chat function. Don’t know if this should be able. I’m also wondering if blender 3.0 comes out (blender next generation), should they have inplantated a function to it for online and network games?
Actually the only reason i mentioned it is because these ideas actually exist, in fact i found out about blender through one.
take a look at www.cybertown.com or www.i-city.co.il
Cybertown was the best one, you could get a job, a house there was currency, you lived in seperate neighbourhoods, just one problem now though, it’s $5 a month subscription, but i guess you do have to pay for the 3-d (blaxxun contact).
I think we should make one for blender, then people could upload their own characters that they made themselves.
im not an expert but i will try to help. For the user to have they’re own char im not sure how it would work but here goes:
The char is on the users comp and the area/level is on a server…
You would need to append the char to the server. Im not sure if this is possible. You could do it manually so that they upload their char and you would need to append it to the area/level manually.
Now for the hard stuff
If you want to let the user interact with each other, you would need to create your own network structure for blender since none exist. (that work anways)
I wrote up some stuff about multiplayer/networks for blender. Here it is
Multiplayer Theory
One of the things that game blender is lacking is an online multiplayer engine. This document
presents a theory on how to program it with python. You will need Winsock control or something
similar.
Note this does not contain code on how to do it but a theory on how it works.
Client 1 sends information to Client 2 about what it did. This includes the client’s 1 player
position, stats, change in level caused by client1. So basically it sends everything that happens to
Client 2.
Client 2 also sends all its information to Client 1
After the data is sent to the other client computer, the game will be updated based on the
information sent.
This happens every frame so that the clients are in sync with one another
Here is a basic example.
Client 1 sends this information to client 2 every frame then updates it self:
UserName = Client1
uHP = 50
uPlayer LX = 100 (L stands for loc or location)
uPlayer LY = 200
uPlayer LZ = 100
uPlayer RX = 100 (R stands for Rot or Rotation)
uPlayer RY = 100
uPlayer RX = 100
uExit = False (this checks if the player has disconnected )
uFire = True (has the player fired a bullet if so update creating a bullet on the client 2)
uBull LX = 100
uBull LY = 100
uBull LX = 100
uBull RX = 100
uBull RY = 100
uBull RX = 100
(create a new bullet if the bullet before it still exists. N is an integer. This integer
increases by one every time a new bullet is created so that it has a different name from the
previous)
uBull(n) LX = 100
uBull(n) LY = 100
uBull(n) LX = 100
uBull(n) RX = 100
uBull(n) RY = 100
uBull(n) RX = 100
As you can see this is a basic game but a lot of data has to be sent. The “u” in front of all the
properties being sent is a variable that stores the clients user name so that the properties don’t
have the same name as client 2. When the data is received by client 2 it updates it self and sends
its info to client 1. This is a loop that goes on forever until some exits.
But before the two clients can start sending information back and forth between each other they
need to know a little about each other.
First they need to know where each other are (IP address)
Where the active folder is (where the update information is sent)
What port is open (so that update information is sent)
Once that information is sent then the computers can start sending information to each other.
Details
IP Address:
What is it ?
An IP Address is the location of your computer on the net.
Why do we need it ?
With out it the two clients would not know where they could find each other.
Port
What is it ?
A Port is like a door to your computer.
Why do we need it ?
Once the clients have each others IP addresses they know where they are but still cant send
information to one another because they don’t know which port to use. You should use a port number
higher than 5000 because a lot of programs use different ports and if you use the same one as
another program then it won’t work.
Active Folder
What is it?
It stores all the update information.
Why do we need it?
This is where all the update information is stored and read form. It is imperative that the right
path is used or errors will occur.
Authentication
- Server gets a connection request and accepts
- Server sends a header to the client requesting a username and password. (e.g. of header sent. “Request_Login”
- Client receives the header and passes it to a string splitter.
- The string is split at the “_” character and stored in a string list.
- The list items are passed to the ReadHeader(command, content) function. We would pass them like this: ReadHeader(list[0], list[1]) The ReadHeader(command, content) function takes 2 arguments. It uses a series of if statements to find the correct function to pass the content to. (e.g. if command == “Request”: request(content) )
- The ReadHeader function passes the content to the corresponding function. In this case it passes it to the function request.
- The Request(content) function works in the same way as the ReadHeader function. It uses a series of if statements to find the right function to call.
You can also talk to these people since they know more than me.
Saluk, Sutabi, and TaylorR.
I hope that helped.
yeah, you guys got the idea. It would be like cyber town(except better). I didn’t think about some of the things posted, so I guess it will take alittle longer than I thought, but I’m still commited. Maybe Instead i can just set it up as a community of 3d worlds for viewing alone, for the time being. The conditions for belonging to the community would be: a standard for navigation, and seemless navigation between pages. Which reminds me, does anybody know if an object in the 3d plugin can link to another site?
Which reminds me, does anybody know if an object in the 3d plugin can link to another site?
Yes its possible, i forgot how, ill tell ya when i find out.
you can also check out the muse browser