Very interesting. I'd love to test your app in my iPhone. Can you prepare something that I can download or run in my phone?
Announcement
Collapse
No announcement yet.
Real Flash Quake
Collapse
X
-
Maybe YES! The only thing I'm not sure of is if I need an actual ios device to make the build. Let me try it.
Comment
-
Some of a bitch! I do need the device. That's OK, I think one of my cousins has an IPhone. I'll see if I can get them over here so I can make a build.
----
1) Go to https://developer.apple.com/ios/mana...s/index.action – Devices, Click on Add Devices, you can find your Device ID in iTunes
2) Add a name you want and the UDID of your device.
These 2 steps have foiled me. Bah! lol.
That is of course unless you want to go to a hell of a lot of trouble to help me....
The device is necessary to build the certificate that authenticates my app. I probably don't need the device after that.
Comment
-
'probably don't'... lol, ever the optimist...
you build it for a specific phone and then you can run/test it on that phone. it won't work on anyone else's phone of course (unless its explicitly built for them), because if they allow that then you'd be able to sell stuff without paying 40% of your revenue to apple...
it'll be a cold day in hell before IOS gets an FTE port. It simply isn't practical - doing so would require a jailbreak.
/me wonders what IOS' javascript performance is like.
but yeah, good luck with your stuff.
Comment
-
If anyone with an ios device would like to help me. I have a number of things you can do so I can make an ios build.
first download this certificate
https://drive.google.com/open?id=0B_...2Y1RnZzVm9YT28
then do all of this:
Creating the Certificate
Go to https://developer.apple.com/ios/mana...m/index.action – Certificates->Development Tab, Click on Request Certificate and upload the file CertificateSigningRequest.certSigningRequest that is in your OpenSSL bin. Submit and refresh the page a couple of times until it says DOWNLOAD. Download that file and put it in your OpenSSL bin. gyp:I need this file, the file this is telling you to upload is the one I provided in the first link.
Adding the Device
Go to https://developer.apple.com/ios/mana...s/index.action – Devices, Click on Add Devices, you can find your Device ID in iTunes
Add a name you want and the UDID of your device.
Create App ID
Go to https://developer.apple.com/ios/mana...s/index.action and Click on New APP ID and add a name and an unique id. (Unique ID has to be the same you have in the application.xml in the FlashDevelop Project, that ID is set as default “air.MobileSomething” you should change it to something like “com.yourname.yourappname”, also remember to change the same APP_ID in SetupApplication.bat) -gyp: Put whatever ID you want, I'll change it on my end. Just remember it and tell me what it is.
Create a Provisioning Profile
Go to https://developer.apple.com/ios/mana...s/index.action and Click New Profile. Check everything, continue and refresh the page a couple of times until you see Download.
Download the file in the folder “cert”
Then send me that file plus the file from the first step and tell me what ID you used in the second step..
If multiple people go to the trouble to help me, I will make multiple builds... I'm not gonna leave anyone hanging after doing all this. If for some reason I do need your device, I got ya covered there too. I'll just give you my code and show you how to set up flashdevelop to run it. It's real easy. FlashDevelop makes it so you don't have to do shit but select some boxes and wait for the API's to download. You don't have to know shit but how to check boxes and click "go".
Honestly and truly, if no one decides to help, I'm going to assume there is no market and completely ignore ios as a platform for my engine. It's just true. 99% of the people I know use android/windows/linux it really doesn't matter to me if ios has a build BUT if ios folks show interest, make a small initiative, I will build it. It's not my fault that your platform is so restrictive. I've made every initiative that I can on my end to make this happen.Last edited by MadGypsy; 04-29-2016, 01:05 PM.
Comment
-
@spike - well, whoever helps me is gonna get a version for their phone lol. Which means they will get every version for their device and fuck apple.. Also, I shouldn't need their device to build it (i think) maybe just their device to run it.
@optimist - you won! You are the millionth person to say that to me!I'll tell you what you won when I decide to get a job.
Last edited by MadGypsy; 04-29-2016, 12:42 PM.
Comment
-
Originally posted by MadGypsyActually I don't even have to write the instructions cause I just did.
I just wanted to give you the heads up.
If I were you, since you have a lot to do, you should focus on platforms you know and are familiar with.Quakeone.com - Being exactly one-half good and one-half evil has advantages. When a portal opens to the antimatter universe, my opposite is just me with a goatee.
So while you guys all have to fight your anti-matter counterparts, me and my evil twin will be drinking a beer laughing at you guys ...
Comment
-
lol... that was mostly a copy/paste.
@stick to platform...
Yeah I really don't care about ios. If ios people were interested in the future of this I would want to provide a solution but, really, Apple's business model implies that they are more worried about squeezing every buck they can out of people instead of keeping an open environment to build their development community. Quake lasted 20 years with the exact opposite business model. My cousin doesn't have an iphone so I'm pretty sure I know exactly NOBODY using apple products. I'm pretty sure google is a lot bigger than apple. I wonder if it has something to do with the fact that they don't make you jump through hoops to publish your work and they don't put their own devices in jail. I don't even have to have an android device to make android apps. My environment will build the entire thing for distribution and then try and install it on a connected device, if no device is connected it just dies but, the distribution copy has already been built.
Comment
-
Originally posted by MadGypsy View PostApple's business model implies that they are more worried about squeezing every buck they can out of people instead of keeping an open environment to build their development community. Quake lasted 20 years with the exact opposite business model.
Viruses, malware, ransomware that encrypts all your files and asks for ransom practically don't exist on any Apple products at all. Android takes a different approach. Each has pros and cons. Apple products are rather hassle-free in that sense, at some expense of flexibility.
But that lack of flexibility also protects the end-user.
Gaming consoles do about the same exact thing that Apple does (Apple offers more flexibility than that though), few people complain about how a game console is locked-down.
Some people want something that "just works all the time with no hassles". Some people want more than that, and so they don't like that model.
No right or wrong, just different concepts.Quakeone.com - Being exactly one-half good and one-half evil has advantages. When a portal opens to the antimatter universe, my opposite is just me with a goatee.
So while you guys all have to fight your anti-matter counterparts, me and my evil twin will be drinking a beer laughing at you guys ...
Comment
-
@spike - hah hah you got me. Message is loud and clear - check map versions.
I'm assuming my method for checking versions isn't versatile enough to account for other versions. Unless their is a BSP ver 844124994...lol. I was wondering why lstedge was crapping out at 250,000 +/- indexes, considering it can hold over 4 billion.
*The maximum size of an indexed array is 232 - 1 or 4,294,967,295.
jam6_daya version (in output panel)
e1m1 version
Last edited by MadGypsy; 04-29-2016, 07:45 PM.
Comment
-
jam6_daya is bsp2, yes.
bsp2 changes the version value, and changes coords to floats instead of shorts, and all other shorts into 32bit ints.
also beware of prior tweaks for bsp29 that used unsigned shorts instead of signed ones for everything else.
bsp2 is otherwise identical.
Comment
-
I encapsulated all the brush entities and just for testing purposes I added MOUSE_DOWN events to all of them . The "hit num" in the output panel is my indicator that it recognizes my clicks. In this case the door in the picture was the 5th brush model that was created in BSP construction. I don't have to test if it really is the fifth. There's no way it's not due to how I applied it.
However! MOUSE_DOWN does not honor walls and the world. So, it IS possible to click through a wall and if you are also coincidentally on an entity which is on the other side of the wall, it will register as a hit. None of that matters though cause I just wanted to make sure I could and was "talking" to entities.
Not to mention that attaching mouse_down events to every damn brush entity is VERY expensive. What do I have like 50 listeners running right now? I couldn't apply it to the ObjectContainer3D, I had to go deeper and apply it to it's inner meshes.
@spike - hah hah. You gave me that map when I was barely even rendering a BSP at all. You sneaky fella you.That's pretty funny. At least your jokes are basically harmless. I only fell for it for 2 builds, the third one was with a version trace.
Oh also @ spike. You were right and wrong about something and I caught it. You were right about me assuming the first lightstyle is 0 BUT only in one of my projects. Apparently I caught that before but only changed it in one project. Good catch. I like how you can read AS3 (not that it's all that hard). A couple of other programmers I know look at my code like it's french. I don't understand that. It's just a bunch of functions and loops... Javascript with Classes and Strict Typing.Last edited by MadGypsy; 04-29-2016, 11:32 PM.
Comment
-
@beware of prior tweaks for bsp29 that used unsigned shorts instead of signed ones for everything else.
Is this 2PSB, I think that's what it was called. If I remember correctly.
It's not critical that I worry about these things because, this really isn't intended to be a quake engine. There is actually going to come a point in the nearish future where this all takes a very hard turn. I'm just trying to get past the BSP part with a very solid foundation. Honestly, I'm just torturing myself with this due to things that I WANT. My API already supports obj, md2, md5 and a couple of other formats. I could do everything in blender if that's how I wanted to roll. I personally like radiant a lot for building worlds. I'll use blender to accent them.
The game I have been developing on paper is almost nothing like quake. It's old school looking.. quakish in appearance but I will definitely have to make my own radiant gamepack to develop my worlds. No sweat...done that like 100 times.Last edited by MadGypsy; 04-29-2016, 11:50 PM.
Comment
-
no, 2PSB uses ints instead of floats for those coords. as well as the wrong header.
hexen2 has a different submodels struct (and differences in the clipnodes, but not an actual format difference there, per-se)
starting with an abusive map helps force you to realise how shit your current (at the time) rendering is. it means you instantly realise when any rewrite won't scale rather than thinking that its great - because pretty much every algorithm is great when you're only drawing a few quads. small maps like all the id ones are too small for any real algorithm optimisations. they're mostly pointless in terms of benchmarking now (hurrah for benchmarking things other than bsp rendering).
so did you actually get that map to load? if you're not using hardcoded offsets for everything then it should be pretty easy, and even if you are you can just make two versions of the function.
I didn't read your AS3, I looked at your rendered screenshots of e1m1 and guessed at what would cause those glitches.
I'm too lazy to decode your code. small disjointed snippets with random functions with non-obvious behaviours, etc. no, the limited code that can fit on a screenshot is useless and wasteful that its in a friggin screenshot. I mean, seriously? should I start providing updates for FTE by dumping the code as a series of screenshots? is that the done thing nowadays?
programming is about knowing where to look without having to read every single function. if you actually have to read it then its because you already know that its buggy / limited, or you're doing a code review.
STILL no linear filtering? going by the non-standard-format fragment program you pasted, that stuff is specified within your fragment shader. lightmaps NEED linear filtering.
Comment
-
Why are you so stuck on whether or not I add a linear filter to shadows? I have crappy animated transparent water... why don't you beat me up that I don't have caustics yet? I have lit files on standby, throw a dagger in my guts cause I haven't added anisotropic filtering. Do you see the theme? I'm not working on shaders right now!
There is not even anything to play yet. I'm a hell of a lot more concerned with crushing down this parser to all kinds of unreadable disjointed blah blah blah, animated textures, harnessing and manipulating brush entities, collision detection and anything else you can think of that has not one iota to do with how pretty things are.
FUCK FILTERS.... for right now. When it does come time to write filters I am going to have to spin my own material because the Away3D material that supports what I need to do is not robust enough. It actually only partially supports what I need to do. It adds a second UV set and multiples the image onto the displacement. There is NO way in to add a shader unless I modify the original and I'm not ready to start modifying my API.
You want shaders so bad right this minute, You do them. You know where my source is. Have fun, when you apply that linear filter it is going to filter the entire combo texture... it's not like I haven't already played with this.
I post my code as screenshots because some people including myself like to read code and this site doesn't have a decent code tag. No syntax hilighting or anything.
@the limited code that can fit on a screenshot is useless and wasteful that its in a friggin screenshot.
What? Are you OK, man? You know what's hard to read? I'm gonna get my s&t on line 50, then Imma skip all the way to line 400 in a completely different function to get my UV's. Now let's go to another completely different function on line 212 to get lightS & lightT... Build face, man. 1 function that builds the faces and stores all their data the first time though. What is stupid about this? Is your data somehow different because you wrote 100 functions to get it and spread it all over the place? If I broke everything down into baby functions I'd have a gazillion different functions with like 3 lines in them. I'm sorry if there are people out there that can't decipher the code when it's in a straight line in one function that does exactly what I named it. function BuildFaces...cough builds faces, imagine that. And because of that my code actually does fit in a screenshot. Your code doesn't.Last edited by MadGypsy; 04-30-2016, 12:04 PM.
Comment
Comment