Just two and a half months after the release of Blender 2.81, Blender 2.82 is now available. While nowhere near as massive an update as Blender 2.80, there are still a number of improvements to be found in Blender 2.82 including:
New Mantaflow powered gas and liquid physics simulation engine
Improved cloth simulations with support for internal air pressure and internal springs
UDIM tiled texturing support (learn more here and here)
PIXAR USD format export support
Cycles improvements including new nodes, faster rendering on Windows and more
AI DeNoiser support on RTX hardware powered by NVidia OptiX for faster cycles renders
Preview pass support in EEVEE renderer including ambient occlusion, mist, combined, normal and more
Transparent materials now blend properly with volumetrics
Sculpting improvements including new multi-plane scrape brush and slide relax brush as well as pose brush improvements
Grease pencil improvements including new polyline tool and multi stroke modifier
Plus several other new features and improvements
For complete details on what’s new in Blender 2.82 be sure to check out the complete release notes available here. You can also learn more and see several of the new features in action in the video below.
PC Multiplayer Games Get Big Discounts In New Weekend Sale
CD Projekt Red's digital storefront GOG has launched a weekend sale featuring a large variety of cooperative games. If you're looking for a new game to play with your significant other on Valentine's Day or something to play with friends and family over the holiday weekend, the "We Love Games" sale is definitely worth checking out. The sale runs until February 17 at 6 AM PT / 9 AM ET.
If you want to test your communication skills, cooperative cooking game Overcooked and its sequel are on sale. Overcooked: Gourmet Edition is only $5 (was $20), and Overcooked 2 is $15 (was $25).
Posted by: xSicKxBot - 02-16-2020, 02:26 AM - Forum: Lounge
- No Replies
Stranger Things Season 4 Teaser: Hopper Is Alive And Cold In Russia
At the end of Stranger Things Season 3, the audience is led to believe that Hopper died in a fire, and then there is a glimmer of hope in a post-credit sequence that he may actually be alive. A new teaser for Season 4 of the hit Netflix series puts all the theories and questions to rest, for now.
In a 50-second video, which you can see below, Hopper is revealed to be alive and far away from his hometown of Hawkins. What else does this teaser reveal? Not much, sadly.
Considering the title of the video is "From Russia with love," the military surrounding this camp, and even the birch trees, it's safe to say Hopper is in Russia--living his new life as a guy who hammers railroad spikes into the ground. That's pretty far from his normal stomping grounds of Hawkins.
A regular expression is a decades-old concept in computer science. Invented in the 1950s by famous mathematician Stephen Cole Kleene, the decades of evolution brought a huge variety of operations. Collecting all operations and writing up a comprehensive list would result in a very thick and unreadable book by itself.
Fortunately, you don’t have to learn all regular expressions before you can start using them in your practical code projects. Next, you’ll get a quick and dirty overview of the most important regex operations and how to use them in Python. In follow-up chapters, you’ll then study them in detail — with many practical applications and code puzzles.
Here are the most important regex operators:
. The wild-card operator (‘dot’) matches any character in a string except the newline character ‘\n’. For example, the regex ‘…’ matches all words with three characters such as ‘abc’, ‘cat’, and ‘dog’.
* The zero-or-more asterisk operator matches an arbitrary number of occurrences (including zero occurrences) of the immediately preceding regex. For example, the regex ‘cat*’ matches the strings ‘ca’, ‘cat’, ‘catt’, ‘cattt’, and ‘catttttttt’.
? The zero-or-one operator matches (as the name suggests) either zero or one occurrences of the immediately preceding regex. For example, the regex ‘cat?’ matches both strings ‘ca’ and ‘cat’ — but not ‘catt’, ‘cattt’, and ‘catttttttt’.
+ The at-least-one operator matches one or more occurrences of the immediately preceding regex. For example, the regex ‘cat+’ does not match the string ‘ca’ but matches all strings with at least one trailing character ‘t’ such as ‘cat’, ‘catt’, and ‘cattt’.
^ The start-of-string operator matches the beginning of a string. For example, the regex ‘^p’ would match the strings ‘python’ and ‘programming’ but not ‘lisp’ and ‘spying’ where the character ‘p’ does not occur at the start of the string.
$ The end-of-string operator matches the end of a string. For example, the regex ‘py$’ would match the strings ‘main.py’ and ‘pypy’ but not the strings ‘python’ and ‘pypi’.
A|B The OR operator matches either the regex A or the regex B. Note that the intuition is quite different from the standard interpretation of the or operator that can also satisfy both conditions. For example, the regex ‘(hello)|(hi)’ matches strings ‘hello world’ and ‘hi python’. It wouldn’t make sense to try to match both of them at the same time.
AB The AND operator matches first the regex A and second the regex B, in this sequence. We’ve already seen it trivially in the regex ‘ca’ that matches first regex ‘c’ and second regex ‘a’.
Note that I gave the above operators some more meaningful names (in bold) so that you can immediately grasp the purpose of each regex. For example, the ‘^’ operator is usually denoted as the ‘caret’ operator. Those names are not descriptive so I came up with more kindergarten-like words such as the “start-of-string” operator.
Let’s dive into some examples!
Examples
import re text = ''' Ha! let me see her: out, alas! he's cold: Her blood is settled, and her joints are stiff; Life and these lips have long been separated: Death lies on her like an untimely frost Upon the sweetest flower of all the field. ''' print(re.findall('.a!', text)) '''
Finds all occurrences of an arbitrary character that is
followed by the character sequence 'a!'.
['Ha!'] ''' print(re.findall('is.*and', text)) '''
Finds all occurrences of the word 'is',
followed by an arbitrary number of characters
and the word 'and'.
['is settled, and'] ''' print(re.findall('her:?', text)) '''
Finds all occurrences of the word 'her',
followed by zero or one occurrences of the colon ':'.
['her:', 'her', 'her'] ''' print(re.findall('her:+', text)) '''
Finds all occurrences of the word 'her',
followed by one or more occurrences of the colon ':'.
['her:'] ''' print(re.findall('^Ha.*', text)) '''
Finds all occurrences where the string starts with
the character sequence 'Ha', followed by an arbitrary
number of characters except for the new-line character. Can you figure out why Python doesn't find any?
[] ''' print(re.findall('\n$', text)) '''
Finds all occurrences where the new-line character '\n'
occurs at the end of the string.
['\n'] ''' print(re.findall('(Life|Death)', text)) '''
Finds all occurrences of either the word 'Life' or the
word 'Death'.
['Life', 'Death'] '''
In these examples, you’ve already seen the special symbol \n which denotes the new-line character in Python (and most other languages). There are many special characters, specifically designed for regular expressions.
Where to Go From Here?
If you want to master regular expressions once and for all, I’d recommend that you read the massive regular expression tutorial on the Finxter blog — for free!
After several years of changing business models and ownership changes, Corona Labs have decided to shut things down. Thankfully for Corona users they full open sourced the engine and tooling and changed to the MIT license.
Details of the closure process from the Corona Labs site (warning, it’s having trouble right now):
Some of the Corona Labs staff have expressed an interest in continuing to work with Corona as an as-available hobby project, so some engine development will continue. There is a possibility that engineers would seek funding through platforms like Patreon or Github Sponsors to continue work in larger capacity.
Appodeal will continue to fund infrastructure costs and work with the open source staff to keep the Appodeal plugin up to date.
The Corona open source license will change from its current dual license state (Commercial + GPLv3) to a single, much more permissive license: The MIT License will make building the open source version of Corona easier for you and lift distribution restrictions on your apps and games. If you are using the GPL version of Corona, you can continue doing so in your fork.
Corona Labs will remove Splash Screen restrictions and plugin license checks from Native and Simulator builds. All first-party plugins will be open sourced and be available on GitHub. Corona’s “daily” builds will be built using tools available for Open Source projects, and would be available on GitHub releases.
We will change the Corona Simulator to be an offline tool, building for all supported platforms using local storage as a source for plugins.
Marketplace sales will cease. Vendors will be paid what they are owed, and will have to distribute updates for their plugins themselves. Users will be able to download purchased plugins and assets before the store closure. Corona Labs will stop accepting new submissions to the Marketplace on February, 15. 2020. Self-hosted plugins will be turned on for everyone so community plugin developers can continue to provide plugins.
We will migrate the forums and coronalabs.com website content to another platform, since the current setup is tied to an expensive infrastructure. We may need several community members to volunteer to administer the new Forums. We are still working on what the coronalabs.com website access will become.
The community is welcome to spin up discussion forums. Possibilities include using GitHub’s Issues, Reddit’s /r/CoronaSDK page, a Facebook Group, etc. The community Slack will remain.
The Corona Labs maintained social media accounts will remain open, and we will turn them into sources of useful information for developers (i.e., industry news, development and monetization tips, etc.).
All these will not happen overnight. We are working on changes to the parts of the engine, and will release them gradually, moving the build process offline as well as migrating content to different platforms. We will post updates on the progress, as well as send out one more final email with all the details Feel free to follow Corona on Github or get involved in development. Progress will be reflected in this Github Project.
Learn more about the Corona Labs closure in the video below.
I’m glad we’ve seen some decent games come out recently – it’s been a good week for reviews for premium games, which is let me do some experimenting with news and older content to see what we can do to keep things ticking over.
In case you were wondering, the new Editor & Staff Writer for Pocket Tactics have been hired, and they’ll be starting next month. You’ll be getting some official comms from me as to what’s going to be happening so you guys are in the loop, but it won’t be till week after next at least as I’m on holiday next week. With that in mind, there also won’t be a Weekender update next week. The header image is courtesy of Book of Demon’s Steam page.
This is just a reminder for anyone who didn’t read our review yesterday, but Company of Heroes is now finally out on iPad. Feral did another great job adapting this classic RTS for the smaller screens, although as always with these kinds of games they can only do so much. There are plenty of actions in CoH that require a bit of finesse and these are still a little bit awkward to do on an iPad, even if the excellent new control scheme.
Also worth noting that this is just the base game’s single-player campaign and then up to 4v4 Skirmishes against the AI. There’s no multiplayer as of yet, and nothing from the game’s two expansions either. These are hopefully coming further down the line.
Another tablet-exclusive game, Book of Demons has been making a name for itself on Steam since 2018, and is now ready to conquer the hearts & minds of iOS tablet users. It mixes hack’n slash dungeon crawling with deck-building mechanics. It features procedurally generated dungeons and a seperate rogue-like mode. The Steam page mentions controller support, but we’re unsure whether this functionality has made it into the iOS version.
I’ve got Matt S on the case, so hopefully our review will be live before the end of the month. Early chatter from the web seems favourable, though.
Also of note:
Microsoft’s game streaming service, Project xCloud, has finally come to iOS, although it’s a lot more restricted than the Android counterpart.
Pokemon Home, the new service app that allows you to track your Pokemon collection across multiple games (amongst other things), is now available on. We can only find an iOS store link right now, but it’s also supposed to be on Android (and the Switch).
App Updates & News
Some pretty cool updates and announcements dropped this past week, here’s the summary:
Stardew Valley has finally updated the mobile version to 1.4, which was a huge update that added a new map, lots of new items, a new end-game mystery… even a movie theatre! You can read the full change-log here, but it contains spoilers. Saves from the PC version of the game should also now work in the mobile version.
GWENT is coming to Android! After some rumours started circulating earlier in the week, CDPR finally announced that the hit Witcher card game spin-off will be coming to the Google Play store on March 24th, 2020. Progress can be synced between iOS and PC if you use your GOG account. Pre-registration is available now, and if you sign-up you get an exclusive avatar to use in-game.
Minecraft Earth’s Early Access build has also been updated to Version 0.12.0, and includes persistent health between Adventures as well as being able to eat meat to regain health. There’s also a new mob called the Wooly Cow. A few new Android phone models have also been green-lit to play the game. Check out the full notes here.
Perchang, creators of Warhammer Quest & Warhammer Quest 2 are back with another entry in the tactical RPG series. This time they’re ditching the Old World for the Mortal Realms with Warhammer Quest: Silver Tower. This new title is reported to have a big campaign, ten playable champions as well as weekly trials. It’s due out on iOS and Android later this year.
App Sales
It’s nice to see some decent sales on the table again – this year’s been a little dry so far. Here’s what we’ve found:
Asmodee Digital are running a sale on a number (but not all) of their titles on iOS and Android. Notable ones include Twilight Struggle & Jaipur, but there are a few others as well.
Stardew Valley is down to $4.99 on mobile to celebrate the release of the 1.4 Update.
Knights of the Card Table, a quirky deck-building dungeon-crawler is down to $2.99 – it’s best price to date.
We weren’t huge fans of Codex of Victory when it released back in 2017, but it’s currently down to $0.99 so who cares. Maybe it’s gotten better in recent years?
Seen anything else you liked? Played any of the above? Let us know in the comments!
Announcing Experimental Mobile Blazor Bindings February update
Eilon
February 10th, 2020
I’m delighted to share an update of Experimental Mobile Blazor Bindings with several new features and fixes. On January 14th we announced the first experimental release of Mobile Blazor Bindings, which enables developers to use familiar web programming patterns to build native mobile apps using C# and .NET for iOS and Android.
Here’s what’s new in this release:
New BoxView, CheckBox, ImageButton, ProgressBar, and Slider components
Xamarin.Essentials is included in the project template
Several properties, events, and other APIs were added to existing components
Made it easier to get from a Blazor component reference to the Xamarin.Forms control
Several bug fixes, including iOS startup
Get started
To get started with Experimental Mobile Blazor Bindings preview 2, install the .NET Core 3.1 SDK and then run the following command:
dotnet new -i Microsoft.MobileBlazorBindings.Templates::0.2.42-preview
And then create your first project by running this command:
To update an existing Mobile Blazor Bindings Preview 1 project to Preview 2 you’ll need to update the Mobile Blazor Bindings NuGet packages to 0.2.42-preview. In each project file (.csproj) update the Microsoft.MobileBlazorBindings package reference’s Version attribute to 0.2.42-preview.
New BoxView, CheckBox, ImageButton, ProgressBar, and Slider components have been added. A picture is worth a thousand words, so here are the new components in action:
And instead of a thousand words, here’s the code for that UI page:
Xamarin.Essentials is included in the project template
Xamarin.Essentials provides developers with cross-platform APIs for their mobile applications. With these APIs you can make cross-platform calls to get geolocation info, get device status and capabilities, access the clipboard, and much more.
Here’s how to get battery status and location information:
Several properties, events, and other APIs were added to existing components
The set of properties available on the default components in Mobile Blazor Bindings now match the Xamarin.Forms UI controls more closely.
For example:
Button events were added: OnPress, OnRelease
Button properties were added: FontSize, ImageSource, Padding, and many more
Label properties were added: MaxLines, Padding, and many more
MenuItem property was added: IsEnabled
NavigableElement property was added: class
And many more!
Made it easier to get from a Blazor component reference to the Xamarin.Forms control
While most UI work is done directly with the Blazor components, some UI functionality is performed by accessing the Xamarin.Forms control. For example, Xamarin.Forms controls have rich animation capabilities that can be accessed via the control itself, such as rotation, fading, scaling, and translation.
To access the Xamarin.Forms element you need to:
Define a field of the type of the Blazor component. For example: Microsoft.MobileBlazorBindings.Elements.Label counterLabel;
Associate the field with a reference to the Blazor component. For example: <label @ref="counterLabel" …></label>
Access the native control via the NativeControl property. For example: await counterLabel.NativeControl.RelRotateTo(360);
Here’s a full example of how to do a rotation animation every time a button is clicked:
Fix src work if NETCore3.0 not installed #55 by 0x414c49
Multi-direction support for Visual Element (RTL, LTR) #59 by 0x414c49
Thank you!
What’s next? Let us know what you want!
We’re listening to your feedback, which has been both plentiful and helpful! We’re also fixing bugs and adding new features. Improved CSS support and inline text are two things we’d love to make available soon.
This project will continue to take shape in large part due to your feedback, so please let us know your thoughts at the GitHub repo or fill out the feedback survey.
Eclipse is a full-featured free and open source IDE developed by the Eclipse Foundation. It has been around since 2001. You can write anything from C/C++ and Java to PHP, Python, HTML, JavaScript, Kotlin, and more in this IDE.
Installation
The software is available from Fedora’s official repository. To install it, invoke:
sudo dnf install eclipse
This will install the base IDE and Eclipse platform, which enables you to develop Java applications. In order to add PHP development support to the IDE, run this command:
sudo dnf install eclipse-pdt
This will install PHP development tools like PHP project wizard, PHP server configurations, composer support, etc.
Features
This IDE has many features that make PHP development easier. For example, it has a comprehensive project wizard (where you can configure many options for your new projects). It also has built-in features like composer support, debugging support, a browser,a terminal, and more.
Sample project
Now that the IDE is installed, let’s create a simple PHP project. Go to File →New → Project. From the resulting dialog, select PHP project. Enter a name for your project. There are some other options you might want to change, like changing the project’s default location, enabling JavaScript, and changing PHP version. See the following screenshot.
Create A New PHP Project in Eclipse
You can click the Finish button to create the project or press Next to configure other options like adding include and build paths. You don’t need to change those in most cases.
Once the project is created, right click on the project folder and select New → PHP File to add a new PHP file to the project. For this tutorial I named it index.php, the conventionally-recognized default file in every PHP project.
Then add the your code to the new file.
Demo PHP code
In the example above, I used CSS, JavaScript, and PHP tags on the same page mainly to show that the IDE is capable of supporting all of them together.
Once your page is ready, you can see the result output by moving the file to your web server document root or by creating a development PHP server in the project directory.
Thanks to the built-in terminal in Eclipse, we can launch a PHP development server right from within the IDE. Simply click the terminal icon on the toolbar () and click OK. In the new terminal, change to the project directory and run the following command:
php -S localhost:8080 -t . index.php
Terminal output
Now, open a browser and head over to http://localhost:8080. If everything has been done correctly per instructions and your code is error-free, you will see the output of your PHP script in the browser.
Nintendo Shares A Single New Animal Crossing: New Horizons Screenshot
Tom Nook’s face says what we’re all thinking…
The lack of an Animal Crossing: New Horizons-specific Direct presentation, or even any new info on the game at all, is slowly becoming a painful daily issue for the series’ most dedicated fans. We don’t go a day without seeing a decent number of Animal Crossing players pleading with Nintendo for something… Anything.
Well, it certainly has given us something today. A single screenshot. The image below comes from the game’s North American Nintendo eShop page (with thanks to @SuperDarkMimeIV for spotting it):
The image shows the player chatting to Cranston the lazy ostrich, a character who was first introduced in Animal Crossing: New Leaf on 3DS.
We already knew Cranston was in New Horizons, but we’ll happily take another screenshot of him anyway. We actually took a look at every character confirmed so far if you’re interested in seeing more:
We’re going to get more info on this game before it releases, right? 35 days to go.